백준알고리즘

[4단계 if문 사용해보기]4344번

moon.i 2017. 12. 28. 15:47

문제

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









































[소스코드]

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
import java.util.*;
public class Main {
 
    public static void main(String[] args) {
        Scanner sca = new Scanner(System.in);
        int n = sca.nextInt();
        double result[] = new double[n];
        double sum = 0;
        double ave = 0;
        double count =0;
        for(int i = 0; i<n; i++) {
            int m = sca.nextInt();
            double array[] = new double[m];
            for(int j = 0; j<m; j++) {
                array[j] = sca.nextInt();
            }
            for(int j = 0; j<m; j++) {
                sum +=array[j];
            }
            ave = sum/m;
            
            for(int j=0; j<m; j++) {
                if(ave<array[j]) {
                    count+=1;
                }
            }
            
            result[i]=count/((double)m)*100;
            
            sum = 0;
            ave = 0;
            count = 0;
        }
        
        for(int i = 0; i<n; i++) {
            System.out.printf("%.3f", result[i]);
            System.out.println("%");
        }
        
    }
    
}
 
cs