알고리즘 공부 및 문제 풀이/백준(BOJ)
[기출 하] 단순 계산기
yoonjiy
2021. 8. 29. 18:00
[문제]
두 수의 평균만 구할 수 있는 단순계산기가 있다. 처음에는 두 점수를 목록에서 선택해 두 점수의 평균을 구한다.(선택된 점수는 목록에서 제거된다.) 이후 목록에 남아있는 점수들 중 하나를 선택해 앞서 구한 평균과의 평균을 새롭게 구한다. 목록에 점수가 모두 없어질 때까지 위의 과정을 반복 할 때, 가장 큰 평균값을 구할 수 있는 프로그램을 작성하시오.
[코드]
float solution(int num_arr[], int n){
float sol; //가장 큰 평균값
sort(num_arr, num_arr+n);
sol = (num_arr[0]+num_arr[1])/2.0;
for(int i=2; i<n; i++){
sol = (sol+num_arr[i])/2.0;
}
return sol;
}