

주어진 점수를 배열에 입력받고 최대값을 max_element를 통해 구하고 이를 통해 새로운 점수의 합을 계산
평균을 구해주면 된다.
이때 나눗셈을 할때 static_cast를 통해 double로 캐스팅을 해주어야 값의 손실이 없다. 그리고 소숫점 6자리까지 출력하게 해주는 코드는 다음과 같다.
cout << fixed;
cout.precision(6); // 소수점 6자리까지 출력
정답코드
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
int main()
{
int n;
cin >> n;
vector<int> v(n);
for (int i = 0;i<n;i++)
{
cin >> v[i];
}
int m = *max_element(v.begin(), v.end());
double sum = 0.0;
for (int i:v)
{
sum += (static_cast<double>(i) / m * 100);
}
cout << fixed;
cout.precision(6); // 소수점 6자리까지 출력
cout << sum / n << "\n"; // 평균 출력
return 0;
}
'코딩테스트 > 백준' 카테고리의 다른 글
[백준][C++]5622번. 다이얼 (0) | 2025.03.06 |
---|---|
[백준][C++]2675번. 문자열 반복 (0) | 2025.03.06 |
[백준][C++]10811번. 바구니 뒤집기 (0) | 2025.03.06 |
[백준][C++]2562번. 최댓값 (0) | 2025.03.06 |
[백준][C++]10818번. 최소, 최대 (0) | 2025.03.06 |