반응형
[ Contents ]
1. 문제 (링크 참조)
2. 문제 풀이
자신이 받은 최고점을 '만점'으로 두고 평균을 계산하는 문제입니다.
2022.01.19 - [Algorithm] - [Algorithm] 단골 1번 문제, 구현 / 수학
문제를 잘못 해석하면 난감한 문제입니다. 문제에서 예로 71.43점이 나오는데, 이는 평균이 아니라 변환된 수학 점수입니다. 문제에서 구해야하는 답은 '변환된 평균'입니다.
3. 코드
n = int(input())
score = list(map(int, input().split()))
print( sum(score)/max(score)/n*100 )
만점 대신, Max score로 나누어서 평균을 구합니다.
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
double max = 0;
double sum = 0;
int N = sc.nextInt();
int[] score = new int[N];
for(int i = 0; i < N; i++) {
score[i] = sc.nextInt();
sum += score[i];
if(max <= score[i])
max = score[i];
}
double average = (sum/N)/max*100;
System.out.println(average);
}
}
Java로 풀 경우에는 코드가 조금 길어질 수도 있었습니다. 반면 파이썬은 리스트에서 sum, max 연산을 지원해주므로 간단하게 풀 수 있습니다.
반응형
'Algorithm' 카테고리의 다른 글
[구현/수학] 백준 4344 평균은 넘겠지 - Python, Java (0) | 2022.01.26 |
---|---|
[수학/DP] 백준 2839 설탕 배달 - Python, Java (0) | 2022.01.25 |
[구현/수학] 백준 2577 숫자의 개수 - Python, Java (0) | 2022.01.23 |
[구현/수학] 백준 1110 더하기 사이클 - Python, Java (0) | 2022.01.22 |
[구현/수학] 백준 2884 알람 시계 - Python, Java (0) | 2022.01.21 |
댓글