Computer Science/Algorithm

[Algorithm/C] BOJ.4344 평균은 넘겠지

재오니소스 2018. 2. 22. 15:56

<문제>

문제

대학생 새내기들의 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%

 

출처: <https://www.acmicpc.net/problem/4344

<코드>

#define _CRT_SECURE_NO_WARNINGS


#include <stdio.h>


int main(int argc, char* argv[]) {

int t;

int arr[1001] = { 0, };

scanf("%d", &t);


while (t--) {

int n;

double average = 0;

double sum = 0;

int cnt = 0;


scanf("%d", &n);

for (int i = 1; i <= n; i++) {

scanf("%d", &arr[i]);

}

for (int i = 1; i <= n; i++) {

sum += arr[i];

}

average = sum / (double)n;

for (int i = 1; i <= n; i++) {

if (arr[i] > average)

cnt++;

}

printf("%0.3f%%\n", ((double)cnt/(double)n)*100);

}


return 0;

}

<풀이>

1. 단순하게 다 더하고 나누고 했음

'Computer Science > Algorithm' 카테고리의 다른 글

[Algorithm/C] BOJ.10828 스택  (0) 2018.03.26
[Algorithm/C] BOJ.2920 음계  (1) 2018.02.24
[Algorithm/C] BOJ.1934 최소공배수  (0) 2018.02.21
[Algorithm/C] BOJ.1924 2007년  (1) 2018.02.19
[Algorithm/C] BOJ.2558 A+B-2  (0) 2018.02.17