반응형
문제풀이
1. 각 줄의 첫 번째 요소는 학생수, 그 다음 요소들은 학생들의 점수들이므로 평균을 구한 후, 평균 이상인 학생수를 구해 전체 학생수로 나눠준다.
2. *100을 한 후, 소수점 세자리로 끊어준다. '.3f' 포맷을 활용한다.
Python Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
import sys
readline = sys.stdin.readline
def main(n):
for _ in range(n):
nums = list(map(int,readline().split()))
# 평균 = (첫번째 요소를 제외한 요소들의 합)/(첫번째 요소를 제외한 요소들의 개수)
mean = sum(nums[1:])/nums[0]
# 평균보다 큰 요소만큼 리스트에 1을 넣고 리스트의 총합을 구하면 평균을 넘는 학생의 비율이 된다.
print('%.3f'%(sum(1 for x in nums[1:] if x > mean)*100/nums[0]) + '%')
if __name__ == '__main__':
n =int(readline())
main(n)
|
cs |
문제 링크
반응형
'알고리즘 > 백준' 카테고리의 다른 글
백준 4673 셀프 넘버 Python (0) | 2020.12.10 |
---|---|
백준 1946 신입 사원 (0) | 2020.12.09 |
백준 20162 간식 파티 Python (0) | 2020.12.08 |
백준 1149 RGB거리 Python (0) | 2020.12.08 |
백준 1309 동물원 (0) | 2020.12.07 |