본문 바로가기

코딩/Python

[Python] 백준 4344 평균은 넘겠지

반응형

코드 작성

n = int(input())
for _ in range(n):
    k = list(map(int, input().split()))
    avg = sum(k[1:])/k[0]
    cnt = 0
    for i in k[1:]:
        if i > avg:
            cnt += 1
    rate = cnt/k[0] * 100
    print(f'{rate:.3f}%')

코드  풀이

n = int(input())
for _ in range(n):
    k = list(map(int, input().split()))
    avg = sum(k[1:])/k[0]  # (리스트 k중에서 인덱스 1부터의 합)/(k의 인덱스 0)
    cnt = 0
    for i in k[1:]:  #평균보다 큰 값을 찾아야 하는데 k[0]은 제외
        if i > avg:  #평균보다 넘을 경우 cnt 를 1씩 증가
            cnt += 1
    rate = cnt/k[0] * 100
    print(f'{rate:.3f}%') #f스트링을 사용하고 소수점 3자리까지 표현해야 하므로 :.3f 라고 표기
반응형