4344번: 평균은 넘겠지
문제 )
대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다.
입력 :
첫째 줄에는 테스트 케이스의 개수 C가 주어진다.
둘째 줄부터 각 테스트 케이스마다 학생의 수 N(1 ≤ N ≤ 1000, N은 정수)이 첫 수로 주어지고, 이어서 N명의 점수가 주어진다. 점수는 0보다 크거나 같고, 100보다 작거나 같은 정수이다.
출력 :
각 케이스마다 한 줄씩 평균을 넘는 학생들의 비율을 반올림하여 소수점 셋째 자리까지 출력한다.
풀이)
확실히 사용할 문자들을 미리 정의해 두고, 이를 활용하는 것이 제일 어려운 것 같다.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
|
#include <iostream>
using namespace std;
int main(){
int a, n, cnt;
cin >> n;
for(int i = 0; i < n; i++){
cin >> a;
int arr[a] = { 0 };
int total = 0;
int num = 0;
for(int j = 0; j < a; j++){
cin >> num;
arr[j] = num;
total += num;
}
int avg = total / a;
cnt = 0;
for(int j = 0; j < a; j++){
if (arr[j] > avg){
cnt++;
}
}
double ans = (double) cnt / a * 100;
cout << fixed;
cout.precision(3);
cout << ans << "%" << endl;
}
return 0;
}
|
cs |
출처 : https://www.acmicpc.net/problem/4344
4344번: 평균은 넘겠지
대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다.
www.acmicpc.net
'Develop > 백준 (Cpp)' 카테고리의 다른 글
[백준] 11098번: 첼시를 도와줘! (C++) (0) | 2022.04.23 |
---|---|
[백준] 1977번: 완전제곱수 (C++) (0) | 2022.04.23 |
[백준] 8958번: OX퀴즈 (C++) (0) | 2022.04.19 |
[백준] 1546번: 평균 (C++) (0) | 2022.04.18 |
[백준] 3052번: 나머지 (C++) (0) | 2022.04.18 |