ALGORITHM/백준
[JAVA] 백준 1546 - 평균
송경훈
2024. 5. 19. 13:21
반응형
📖 문제
☑️ 입출력 예제
알고리즘❓ 풀어내기❗️
정답과의 상대/절대 오차는 10의 -2제곱, 즉 0.01까지 허용한다. 오차범위가 있기 때문에 반드시 연산할 때 최소한 자료형 1개 이상은 double 형으로 써야 한다.
🧑🏻💻풀이 코드
import java.util.Scanner;
public class Main {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int N = sc.nextInt();
int[] score = new int[N];
for (int i = 0; i < N; i++) {
score[i] = sc.nextInt();
}
int max = 0;
for (int i = 0; i < N; i++) {
if (score[i] > max) {
max = score[i];
}
}
double sum = 0;
for (int i = 0; i < N; i++) {
sum += (double) score[i] / max * 100;
}
double ans = sum / N;
System.out.println(ans);
}
}
▶ sum += (double) score[i] / max * 100 : double 형으로 형변환 해주어 오차범위를 만족시킨다.