728x90
문제
https://swexpertacademy.com/main/code/problem/problemDetail.do?contestProbId=AV13zo1KAAACFAYh
SW Expert Academy
SW 프로그래밍 역량 강화에 도움이 되는 다양한 학습 컨텐츠를 확인하세요!
swexpertacademy.com
티어
소요 시간
15분
분류
브루트포스
코드
import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.Arrays;
public class Solution {
public static void main(String[] args) throws IOException {
BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(System.out));
int t = Integer.parseInt(br.readLine());
while (t-- > 0) {
int test = Integer.parseInt(br.readLine());
int[] line = Arrays.stream(br.readLine().split(" ")).mapToInt(Integer::parseInt).toArray();
int[] scores = new int[101];
for (int num : line) {
scores[num]++;
}
int maxAns = 0, maxKey = 0;
for (int i = 100; i >= 0; i--) {
if (maxAns < scores[i]) {
maxAns = scores[i];
maxKey = i;
}
}
bw.write("#" + test + " " + maxKey + "\n");
}
bw.flush();
}
}
코드 설명
풀 수 있는 방법은 여러가지가 있다.
HashMap, 정렬 후 최대 연속 횟수 구하기, 배열 (위 코드)
이렇게 세 가지 방법으로 풀어봤는데 1000개로 입력이 적어서 그런지 배열이 제일 실행 속도가 좋았다.
728x90
'코딩테스트 > SWEA' 카테고리의 다른 글
[SWEA | Java] 7465번 창용 마을 무리의 개수 (0) | 2023.12.28 |
---|---|
[SWEA | Java] 1974번 스도쿠 검증 (0) | 2023.12.27 |
[SWEA | Java] 1961번 숫자 배열 회전 (0) | 2023.12.27 |
[SWEA | Java] 1959번 두 개의 숫자열 (1) | 2023.12.27 |
[SWEA | Java] 파리퇴치3 (1) | 2023.12.26 |