ALGORITHM
백준 1546 평균 (Java)
공부하는_다온
2023. 1. 18. 22:05
1. 문제 링크
1546번: 평균
첫째 줄에 시험 본 과목의 개수 N이 주어진다. 이 값은 1000보다 작거나 같다. 둘째 줄에 세준이의 현재 성적이 주어진다. 이 값은 100보다 작거나 같은 음이 아닌 정수이고, 적어도 하나의 값은 0보
www.acmicpc.net
2. 문제 및 입출력예제
3. 문제 풀이
문제에 적혀있는 공식을 이용하면 된다.
그러나 여기서 중요한 점은 정수가 부정확하다는 점이다.
소수점이 있는 계산을 해야 하는데 int로 계산을 할 경우 예상과 다른 결과가 자주 나오기 때문에
정수를 실수로 바꾸는 과정이 필요하다.
4. 코드
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collections;
import java.util.Scanner;
public class Main {
public static void main(String[] args) throws Exception{
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
StringBuilder sb = new StringBuilder();
String N = br.readLine();
int n = Integer.parseInt(N);
N = br.readLine();
String[] num = N.split(" ");
int[] ber = new int[n];
int max = 0;
for(int i=0;i<n;i++) {
ber[i] = Integer.parseInt(num[i]);
if(ber[i]>max)
max = ber[i];
}
double sum = 0;
for(int i=0;i<n;i++) {
sum += ((double)ber[i])/max*100;
}
sb.append((double)sum/n);
System.out.println(sb);
}
}