jyamethyst21 님의 블로그

백준 4344번- '평균은 넘겠지' (PYTHON 풀이) 본문

CODING 💻

백준 4344번- '평균은 넘겠지' (PYTHON 풀이)

jyamethyst21 2025. 11. 12. 03:17

문제:

 

오늘 문제도 설명이 잘 나와있어서 추가 설명은 생략하고 바로 문제 풀이로 넘어가보겠다.

 

풀이:

N = int(input())
count = 0

for i in range(N):
    a = list(map(int,input().split()))
    avg = (sum(a)-a[0])/a[0]
    for i in range(1,len(a)):
        if a[i] > avg:
            count += 1
    print(f"{(count / a[0]) * 100:.3f}%")
    count = 0

반복할 횟수를 입력받고 평균값 이상인 학생을 카운트하기 위해 변수를 선언한다.

그 다음 입력을 리스트 형태로 받고 해당 리스트의 값을 전부 더한 다음 첫번째 인덱스는 학생수이기 때문에 그 값은 빼준다.

그리고 학생수 만큼 나누면 그 값은 평균값이 될테고 해당 값을 avg에 넣는다.

그리고 반복문을 돈다. 학생수를 제외한 값을 평균값과 비교해서 크다면 카운트를 1씩 늘려주고 안쪽 반복문을 전부 돌면 입력 형식에 맞춰서 값을 출력해준 뒤 다음 입력을 위해 카운트값은 0으로 다시 초기화 해준다.