한 걸음씩
[백준][python] 1546 평균 본문
https://www.acmicpc.net/problem/1546
1546번: 평균
첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보
www.acmicpc.net
풀이 과정
1. 첫 번째 줄에 과목 개수 N을 입력받는다
2. score라는 변수로 점수를 공백으로 구분하여 입력을 받는다
3. score에서 max값을 구한 후 big_score 변수에 저장한다
4. score변수를 for loop을 사용하여 요소를 하나씩 꺼낸 후 new_list라는 새 변수 리스트에 append 하는데
그전에 문제에서 요구하는 대로 score에서 나온 요소 i를 big_score로 나누고 100으로 곱해주고 append 한다
- 처음에 입력받은 수에서 최댓값인 점수로 다른 점수들과 같이 계산을 해줘야 한다!!
5. new_list의 합은 sum함수, 개수는 len함수를 사용해서 평균을 낸다
N = int(input())
score = list(map(int, input().split()))
big_score = max(score)
new_list = []
for i in score:
new_list.append(i / big_score * 100)
print(sum(new_list)/len(new_list))
리뷰
수업 때 이 문제를 과제로 받았을 때는 못 풀어서 넘겼다가 이후에 다시 시도해 봤는데 어려운 문제가 아니었다
평균 구하는 문제이지만 중간과정에서 요구사항이 늘어났을 뿐 문제만 잘 읽어보면 쉽게 풀 수 있는 문제!
'BOJ' 카테고리의 다른 글
[백준][python] 2908 상수❓ (0) | 2023.01.25 |
---|---|
[백준][python] 3052 나머지 (0) | 2023.01.25 |
[백준][python] 1157 단어공부 (0) | 2023.01.25 |
[백준][python] 10809 알파벳 찾기 ✅ (0) | 2023.01.25 |
[백준][python] 2675 문자열 반복 (0) | 2023.01.24 |