신규 블로그를 만들었습니다!
문제
대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다.
입력
첫째 줄에는 테스트케이스 C가 주어진다.
둘째 줄부터 각 테스트케이스 마다 첫 수로 정수 N(1 <= N <= 1000)명의 학생이 주어지고 그 다음으로 N명의 0부터 100 사이의 점수가 이어서 주어진다.
출력
각 케이스마다 한줄씩 평균을 넘는 학생들의 비율을 소수점 넷째자리에서 반올림하여 출력한다.
예제 입력
5
5 50 50 70 80 100
7 100 95 90 80 70 60 50
3 70 90 80
3 70 90 81
9 100 99 98 97 96 95 94 93 91
예제 출력
40.000%
57.143%
33.333%
66.667%
55.556%
C 풀이
#include <stdio.h>
int main(void) {
int c = 0, n = 0;
scanf("%d", &c);
while (c--) {
scanf("%d", &n);
int score[1000];
int sum = 0;
double avg = .0;
for (int i = 0; i < n; i++) {
scanf("%d", &score[i]);
sum += score[i];
}
avg = (double)sum / n;
int count = 0;
for (int i = 0; i < n; i++) {
if (avg < score[i]) {
count++;
}
}
printf("%.3f%%\n", (double)count * 100 / n);
}
return 0;
}
※ 직접 문제 풀고 돌려본 뒤, 채점까지 마친 후에 작성한 글입니다.
더 좋은 방법이 있다면, 댓글로 알려주시면 감사하겠습니다 :)
'Algorithm > 백준 온라인 저지' 카테고리의 다른 글
백준/2577번 :: 숫자의 개수 (JAVA) (6) | 2018.03.29 |
---|---|
백준/1152번 :: 단어의 개수 (JAVA) (6) | 2018.03.29 |
백준/2557번 :: Hello World (C언어) (0) | 2018.02.06 |
백준/1001번 :: A - B (파이썬/Python) (0) | 2018.01.12 |
백준/1000번 :: A + B (파이썬/Python) (0) | 2018.01.12 |
최근댓글