문제

내가 작성한 코드
# 테스트 케이스 개수 입력 N
n = int(input())
# 각 테스트 케이스 학생의 수(Students)와 점수(Scores) 입력
for i in range(n):
info = list(map(int, input().split()))
meanScore = sum(info[1:]) / info[0]
meanStudents = len([i for i in info[1:] if i > meanScore])
print("{:.3f}%".format(round(meanStudents / info[0] * 100, 3)))
코드 설명
> n 변수에 테스트 케이스 개수 입력을 받는다.
> 반복문을 통해 테스트 케이스 수에 맞게 진행한다.
> 각 테스트에서 info 변수를 통해 학생의 수와 점수를 입력받는다.
> meanScore라는 변수는 학생들의 평균 점수를 의미한다.
> meanStudents 는 list compression 을 통해 평균 점수 이상의 학생을 구하였고, 그 수를 의미한다.
> format 함수를 통해 소수점 3자리를 출력하였습니다.
'Coding > 백준' 카테고리의 다른 글
| [4673번] 함수 - 셀프 넘버 (어려움) (0) | 2022.07.18 |
|---|---|
| [15596번] 함수 - 정수 N개의 합 (0) | 2022.07.18 |
| [8958번] 1차원 배열 - OX 퀴즈 (0) | 2022.07.18 |
| [1546번] 1차원 배열 - 평균 (0) | 2022.07.18 |
| [3052번] 1차원 배열 - 나머지 (0) | 2022.07.18 |