크래프톤 정글/정글에서 문제풀기

[정글 알고리즘]-[하]-백준4344 평균은 넘겠지

cedis 2026. 3. 12. 14:14

📌 문제 요약

각 케이스마다 학생 수와 점수들이 주어질 때, 평균을 초과하는 학생의 비율을 소수점 3자리로 출력하라.

평균 초과 (strictly greater) 이므로 평균과 같은 점수는 포함하지 않음

💡 핵심 아이디어

① 합계 → 평균 계산   ② 평균 초과 학생 카운트   ③ 비율(%) 출력

출력 형식: "%.3f%%" — %% 는 % 문자 자체를 출력하는 이스케이프

🐍 코드 분석

num = int(input())

for _ in range(num):
    a = list(map(int, input().split()))
    cnt = a[0]          # 첫 번째 값: 학생 수
    scores = a[1:]      # 나머지: 점수 목록

    avg = sum(scores) / cnt          # 평균

    above = sum(1 for s in scores if s > avg)   # 평균 초과 인원

    print("%.3f%%" % (above / cnt * 100))       # 비율 출력

⚠️ 자주 하는 실수

실수 설명
>= 로 비교 평균 이상이 아닌 평균 초과(>)여야 함
%% 누락 % 하나만 쓰면 포맷 오류
결과 모아서 출력 매 케이스마다 즉시 출력해도 정답