-
[4344] 평균은 넘겠지BOJ 2021. 10. 1. 16:34
https://www.acmicpc.net/problem/4344
4344번: 평균은 넘겠지
대학생 새내기들의 90%는 자신이 반에서 평균은 넘는다고 생각한다. 당신은 그들에게 슬픈 진실을 알려줘야 한다.
www.acmicpc.net
<문제>
점수를 입력받자마자 누적하고, n으로 나누어 평균을 구합니다.
평균을 구한 뒤, 다시 배열을 순회하며 평균과 비교하여, O(N) + O(N)으로 평균을 넘는 학생의 수를 구하고
이를 바탕으로 조건에 맞게 출력하면 됩니다.
<소스코드>
123456789101112131415161718#include <stdio.h>int main(void) {int i, j, c, n, sum, a[1000], m, cnt;scanf("%d", &c);for (i = 0; i < c; i++) {scanf("%d", &n);sum = m = cnt = 0;for (j = 0; j < n; j++) {scanf(" %d", &a[j]);sum += a[j];}m = sum / n;for (j = 0; j < n; j++) {if (m < a[j]) cnt++;}printf("%.3f%%\n", (float)cnt * 100 / n);}}cs sum : 모든 점수의 합
m : 평균
cnt : 평균을 넘는 학생의 수
'BOJ' 카테고리의 다른 글
[1697] 숨바꼭질 (0) 2021.10.01 [9012] 괄호 (0) 2021.10.01 [2609] 최대공약수와 최소공배수 (0) 2021.10.01 [1789] 수들의 합 (0) 2021.10.01 [11659] 구간 합 구하기 4 (0) 2021.09.30