<문제>


<코드>

 

# 첫째줄 테스트 케이스 입력
test_case = int(input())

# 케이스마다 한 줄씩 평균을 넘는 학생들의 비율의 리스트
case_student_list = list()

# 둘째 줄부터 각 테스트 케이스마다 학생의 수, 이어서 N명의 점수들
for i in range(test_case):
    total = int(0)
    per = int(0)
    data = list(map(int,input().split()))

    # 총합 구하기
    for j in range(1,len(data)): # len(리스트명) -> 리스트 길이
        total = total + data[j]

    # 점수들의 대한 평균
    avr = total / data[0]

    # 평균이 넘는 학생들의 비율 구하기
    for m in range(1,len(data)):
        if avr<data[m]:
            per = per + 1

    ratio = (per / data[0]) * 100

    # 각 케이스마다의 비율 저장
    case_student_list.append(ratio)

# 각 케이스마다 평균을 넘는 학생들의 비율 출력
for i in range(0,len(case_student_list)):
    print(str('%.3f'%(round(case_student_list[i],3)))+'%')

    # 3째 자릿수에서 반올림 rount(숫자,반올림자릿수)
    # %.3f %(숫자) 하면 소수점 3자리까지 표기

가독성있게 코드 짤것!

'알고리즘 문제 풀이' 카테고리의 다른 글

[백준 알고리즘] C# 시험 점수 5596번  (0) 2021.07.23
[백준 알고리즘] C# 운동 1173번  (0) 2021.07.22
[3052번] 나머지  (0) 2020.01.07
[2920번] 음계  (0) 2020.01.06
[1427번] : 소트인사이드  (0) 2019.10.11

+ Recent posts