https://www.acmicpc.net/problem/4344
테스트케이스 c만큼 range
둘째줄부터 첫 수는 학생의 수 N ([0]), 이후 N명의 점수 ([1:])
점수/N 으로 평균구해서 각 점수와 비교해
평균보다 높은 학생의 비율을 소수점 셋째 자리까지 출력(format 함수 이용)
내 제출
C = int(input()) # 케이스의 수
for _ in range(C):
scores = list(map(int,input().split()))
avg = sum(scores[1:])/scores[0] # 평균 구하기 scores[1:]은 점수부분, scores[0]은 학생수
cnt = 0
for score in scores[1:]:
if score > avg:
cnt += 1 # 평균 이상인 학생의 수
rate = cnt/scores[0] * 100 # 평균 이상 학생 비율
print(f'{rate:.3f}%') # 소수점 셋째 자리까지 출력, f스트링 이용
f-string과 소수점 셋째자리까지 출력(.3f) 등의 출력함수를 사용하는 문제.
특기사항으로 소수점을 출력하는데 round 함수를 이용하려 했으나(round, 3) round 함수의 경우 예를 들어 40.000의 경우 40.000이 아닌 40.0 까지 밖에 표현하지 못하는 문제로 인해 오답처리된다.