<답안>
#include <iostream>
using namespace std;
int main() {
int before[1000] = {0};
double after[1000] = {0};
int n, max = 0;
double result = 0;
cin>>n;
for(int i=0; i<n; i++)
{
cin>>before[i];
if(before[i]>max)
max = before[i];
}
for(int i=0; i<n; i++)
{
after[i] = (double)before[i]/(double)max*100;
result += after[i];
}
cout<<result/(double)n;
return 0;
}
<설명>
최대개수가 1000개 이므로 점수를 저장할 배열 before[1000]을 만든다
인덱스 i=0부터 n-1까지 증가시키며 before[i] 값을 받아 저장한다
만약 before[i]값이 max값보다 큰 경우 max 값을 변경한다
인덱스 i=0부터 n-1까지 증가시키며 새로운 점수를 배열 after[i]에 저장한다
새로운 점수 = 이전 점수(before[i]) / max * 100
평균값 합산을 위한 result에 값을 누적하여 더한다
마지막으로 n개만큼 나눈값을 출력한다
'백준 > 백준 단계별 문제풀이' 카테고리의 다른 글
백준 4344번 (C++) (0) | 2020.08.21 |
---|---|
백준 8958번 (C++) (0) | 2020.08.21 |
백준 3052번 (C++) (0) | 2020.08.21 |
백준 2577번 (C++) (0) | 2020.08.21 |
백준 2562번 (C++) (0) | 2020.08.21 |