티스토리 뷰

728x90

https://www.acmicpc.net/problem/5800

 

5800번: 성적 통계

첫째 줄에 중덕 고등학교에 있는 반의 수 K (1 ≤ K ≤ 100)가 주어진다. 다음 K개 줄에는 각 반의 학생수 N (2 ≤ N ≤ 50)과 각 학생의 수학 성적이 주어진다. 시험 성적은 0보다 크거나 같고, 100보다

www.acmicpc.net

 

 

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
import java.util.*;
 
public class Main {
    public static void main(String args[]) {
        Scanner sc = new Scanner(System.in);
        StringBuilder sb = new StringBuilder();
        int K = sc.nextInt();
        for (int i = 0; i < K; i++) {
            int N = sc.nextInt();
 
            Integer arr[] = new Integer[N];
 
            for (int j = 0; j < N; j++) {
                arr[j] = sc.nextInt();
            }
 
            Arrays.sort(arr, Collections.reverseOrder());
 
            int max = arr[0];
            int min = arr[N - 1];
 
            int sub = Integer.MIN_VALUE;
 
            for (int j = 0; j < arr.length - 1; j++) {
                sub = Math.max(arr[j] - arr[j + 1], sub);
            }
 
            sb.append("Class " + (i + 1+ "\n");
            sb.append("Max " + max + ", " + "Min " + min + ", " + "Largest gap " + sub + "\n");
        }
 
        System.out.println(sb);
        sc.close();
    }
}
cs

 

댓글