한번에 풀리긴 했는데 변수 생성을 많이 한 느낌이 들었다!
C = int(input())
for i in range(C): # C번 반복
l = list(map(int, input().split())) #
N = l[0] # 리스트의 첫 요소값은 학생의 수
total = 0 # 점수 총 합
avg = 0 # 평균 점수
pass_ratio = 0 # 평균을 넘는 학생들의 비율
count = 0 # 평균을 넘으면 카운트 해준다.
for j in range(N): # 총 합을 구한다
total = total + l[j+1]
avg = total / (len(l) - 1) # 평균을 구한다.
for k in range(N): # 평균을 넘는 학생 수를 구한다
if l[k+1] > avg:
count = count + 1
pass_ratio = count / (len(l) - 1) * 100 # 평균을 넘는 학생들의 비율을 구한다
print("{0:.3f}%".format(pass_ratio)) # format()을 사용하여 형식을 지정해준다.
구글링하여 괜찮은 솔루션을 찾아보자~~
n = int(input())
for _ in range(n):
nums = list(map(int, input().split()))
avg = sum(nums[1:])/nums[0] # 평균을 구함 (nums[0]: 학생수, nums[1:] 점수)
cnt = 0
for score in nums[1:]:
if score > avg:
cnt += 1 # 평균 이상인 학생 수
rate = cnt/nums[0] *100
print(f'{rate:.3f}%')