https://www.acmicpc.net/problem/4344
첫 문장부터 너무 인상깊었던 문제였다.
내가 새내기일때 나름 열심히 했었는데 평균은 넘지 않았을까 싶다.
문제는 쉽다.
<<문제풀이>>
1. 테스트케이스 수를 입력받고 그 수만큼 반복문을 돌린다.
2. 학생 수를 입력받고 배열을 만들어 성적을 차곡차곡 담는다.
3. 성적을 입력받은 다음 바로 총 점수에 더해주고 평균을 구한다.
4. TopSide변수에 평균 이상의 점수를 가진 학생의 수를 구한다.
5. 소수점 자릿수 조절 후 출력.
<<코드>>
#include<iostream>
using namespace std;
int main() {
int TestCount;
cin >> TestCount;
int NumStud;
for(int i=0; i < TestCount; ++i){
int TotalScore = 0;
int Average = 0;
double TopSide = 0;
cin >> NumStud;
int StudentList[NumStud];
for(int k=0; k <NumStud; ++k){
cin >> StudentList[k];
TotalScore +=StudentList[k];
}
Average = TotalScore/NumStud;
for(int j:StudentList){
if (j > Average){
TopSide++;
}
}
cout<<fixed;
cout.precision(3);
cout << TopSide/NumStud * 100 << "%\n";
}
}
<<GitHub>>
https://github.com/J2on/BaekjoonOnlineJudge/blob/master/Code/Baekjoon_4344.cpp
그래도 평균을 넘지 않았나 싶다.
< 백준 BaekJoon : 15596번 정수 N개의 합 > C++ (0) | 2021.10.01 |
---|---|
< 백준 BaekJoon : 4673번 셀프 넘버 > C++ (0) | 2021.09.25 |
< 백준 BaekJoon : 8958번 OX퀴즈 > C++ (0) | 2021.09.25 |
< 백준 BaekJoon : 3052번 나머지 > C++ (0) | 2021.09.19 |
< 백준 BaekJoon : 1546번 평균 > C++ (0) | 2021.09.19 |
댓글 영역