📝 문제
> 대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다.
https://www.acmicpc.net/problem/4344
4344번: 평균은 넘겠지
대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다.
www.acmicpc.net
🎨 풀이
💡 성공 코드
import sys
n = int(input())
for _ in range(n):
arr = list(map(int,sys.stdin.readline().split()))
average = (sum(arr)-arr[0]) / arr[0]
good = 0
for i in range(1,arr[0]+1):
if arr[i] > average :
good += 1
print('{:.3f}%'.format((good/arr[0])*100))
> 핵심 :
1. n을 입력받는다.
----------------------------------------- n 번만큼 for문 반복
2. arr을 입력받는다.
- 이러면 arr[0] 자리에 학생 수가 저장이 된다.
3. 평균을 구한다. (average)
- arr[1] ~ arr[n-1] 까지 더한 값에 arr[0]으로 나눈다. = 전체 점수 / 학생 수
4. for문을 또 한번 돌면서, 평균이 넘는다면 good에 넣어준다. (good = 평균 넘는 사람들의 모임)
5. 평균 넘는 사람들의 비율을 구하기 위해 good / arr[0]을 해준 후 100을 곱한다.
그 후, 소수점 셋째자리까지 나타내도록 format 형식을 설정한 후 출력한다.
-------------------------------------------

끝~
⭐ 느낀점
> 재밌다. 하하! 살짝 어려울 뻔 했는데,, 괜찮다. 파이썬에서의 핵심은 아무래도 나누기 할 때 / 사용하는 것 같다. 숫자가 깔끔하게 딱 일치하니 기분이 좋더라~~ 잘했다!
'🎲 알고리즘 공부 > 백준' 카테고리의 다른 글
[백준] 4673번 - 셀프 넘버 (파이썬) (0) | 2022.06.10 |
---|---|
[백준] 15596번 - 정수 N개의 합 (파이썬) (0) | 2022.06.09 |
[백준] 8958번 - OX퀴즈 (파이썬) (0) | 2022.06.07 |
[백준] 1546번 - 평균 (파이썬) (0) | 2022.06.06 |
[백준] 3052번 - 나머지 (파이썬) (0) | 2022.06.05 |