[문제]
두 수의 평균만 구할 수 있는 단순계산기가 있다. 처음에는 두 점수를 목록에서 선택해 두 점수의 평균을 구한다.(선택된 점수는 목록에서 제거된다.) 이후 목록에 남아있는 점수들 중 하나를 선택해 앞서 구한 평균과의 평균을 새롭게 구한다. 목록에 점수가 모두 없어질 때까지 위의 과정을 반복 할 때, 가장 큰 평균값을 구할 수 있는 프로그램을 작성하시오.
[코드]
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;
}
'알고리즘 공부 및 문제 풀이 > 백준(BOJ)' 카테고리의 다른 글
[기출 중] 프로그래머스 올바른 괄호의 갯수 (0) | 2021.09.02 |
---|---|
[기출 하] 방 번호 만들기, 거스름 돈 (0) | 2021.08.29 |
[기출 중] 프로그래머스 입국심사 (0) | 2021.08.28 |
[기출 중] 백준 1074 Z (0) | 2021.08.28 |
[기출 중] 문자열 압축 (0) | 2021.08.26 |