문제 : https://www.acmicpc.net/problem/4344
4344번: 평균은 넘겠지
대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다.
www.acmicpc.net
Sol )
1. 배열을 순회하면서 누적합을 계산한 뒤 n으로 나눠 평균을 계산 ( sum함수와 리스트 슬라이싱 활용 )
2. 다시 한번 배열을 순회하면서 평균보다 큰 값의 개수를 카운트
3. 2에서 구한 횟수 / n * 100을소수점 셋째 자리까지 변환해서 양식에 맞춰 출력 ( 템플릿 문자열 활용 )
소스코드 )
for i in range(int(input())):
arr = list(map(int,input().split()))
n = arr[0]
cnt = 0
average = sum(arr[1:])/n
for point in arr[1:]:
if point>average:
cnt += 1
print(f"{(cnt/n*100):.3f}%")
'Problem Solving > boj.kr (Python)' 카테고리의 다른 글
[BOJ / 파이썬] 1065 : 한수 (0) | 2022.02.13 |
---|---|
[BOJ / 파이썬] 4673 : 셀프 넘버 (0) | 2022.02.07 |
[BOJ / 파이썬] 8958 : OX 퀴즈 (0) | 2022.02.07 |
[BOJ / 파이썬] 1546 : 평균 (0) | 2022.02.07 |
[BOJ / 파이썬] 3052 : 나머지 (0) | 2022.02.07 |
댓글