배열과 리스트 예제 - 1
문제 분석
최고 점수를 기준으로 전체 점수를 다시 계산해야 하므로 모든 점수를 입력받은 후에 최고점을 별도로 저장해야 한다.
문제에서 제시한 한 과목의 점수를 계산하는 식은 총합과 관련된 식으로 변환할 수 있다.
점수가 A, B, C인 경우:
A / M * 100 + B / M * 100 + C / M * 100) / 3=(A + B + C) * 100 / M / 3
손으로 풀어보기
점수를 리스트에 저장한다.
리스트를 탐색하며 최고 점수와 점수의 총합을 구한다.
총합 * 100 / 최고 점수 / 과목의 수를 계산해 정답을 출력한다.
슈도코드
n에 과목의 수 입력
list에 점수 정보 저장
max에 점수 정보 중 최댓값 저장
sum에 list 모든 데이터 값 더하기
sum * 100 / max / n 출력코드 구현
n = int(input())
myList = list(map(int, input().split()))
myMax = max(myList)
mySum = sum(myList)
print(mySum * 100 / myMax / n)Last updated