백준 1546

hong030·2023년 2월 15일
0
  • solved.ac기준 브론즈 5단계 문제


풀이)
시험 평균 = (score1 + score2 + ... + score_n) / n
조작된 시험 평균 = 시험평균 / M * 100
즉, 기존 평균만 안다면 새로운 평균을 구할 수 있다.

단, 소수점을 확실하게 계산하기 위해 score 입력을 소수로 받았으며 모든 계산을 double로 진행했다.
또한 조작된 시험 평균을 계산할 때 시험점수 합 / M / N * 100 의 식으로 나눗셈 먼저 하면 소수 뒷자리가 0으로 탈락되는 경우가 있어, 곱셈 먼저 해주었다.

내 코드)

import java.util.*;

public class Backjoon1546 {
	public static void main(String[]args) {
		Scanner s=new Scanner(System.in);
		int N = s.nextInt();
		double sum = 0;
		double input[]=new double[N];
		for(int i=0; i <N ;i++) {			
			input[i]= s.nextInt();
			sum+=input[i];
		}
		double max = input[0];
		for(int i=0; i <N ;i++) {			
			if(max < input[i]) {
				max = input[i];
			}
		}
		double ave = sum * 100 / N / max;
		System.out.println(ave);
	}
}

profile
자바 주력, 프론트 공부 중인 초보 개발자. / https://github.com/hongjaewonP

0개의 댓글