Code
#include <stdio.h>
int main()
{
int C, N, i, j;
double score[1001] = {};
double sum = 0, avg = 0 ,cnt = 0;
scanf_s("%d", &C);
for (i = 0; i < C; i++)
{
scanf_s("%d ", &N);
for (j = 0; j < N; j++)
{
scanf_s("%lf", &score[j]);
}
for (j = 0; j < N; j++)
{
sum += score[j];
}
avg = sum / N;
for (j = 0; j < N; j++)
{
if (score[j] > avg)
{
cnt++;
}
}
avg = cnt / N * 100;
printf("%5.3f%%\n", avg);
avg = 0;
sum = 0;
cnt = 0;
}
return 0;
}
Key Points
- 문제의 루트만 잘 파악
- 사이클이 한번 끝나면 평균값, 합, 카운트를 모두 초기화 시키는 것이 관건