1204. [S/W 문제해결 기본] 1일차 - 최빈수 구하기 (D2)
문제 링크
- 0점부터 100점 사이의 점수에서 최빈수를 구하는 문제이다.
- 0부터 100을 인덱스로 두는 배열을 만들어서 입력에 따라 그 인덱스의 값을 +1 해준 후
- Arrays.sort()를 사용하여 가장 큰 값을 가지는 인덱스를 출력하면 된다.
- 하지만 sort()를 사용하지 않고 풀어 보았다.
Solution
package swea;
import java.util.Scanner;
public class p1204 {
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
int T = sc.nextInt();
for (int t = 1; t <= T; t++) {
sc.nextInt();
int[] scores = new int[101];
for (int i = 0; i < 1000; i++) {
scores[sc.nextInt()]++;
}
int max = 0, idx = 0;
for (int i = 100; i > 0; i--) {
if (scores[i] > max) {
max = scores[i];
idx = i;
}
}
System.out.printf("#%d %d\n", t, idx);
}
}
}