BOJ-11652-카드
by EunHye Jung
BOJ 11652 카드
문제
풀이코드
- 컬렉션 Map을 이용하고, 범위값만 유의해주면 크게 어렵지 않은 문제였는데,
문제를 제대로 읽지않아 엄청많이 해맸다.
가장 많은 정수가 여러가지라면, 작은것을 출력
이부분을 유의해서 조건절을 잘 나눠야한다!
Map<Long, Integer> numCounter = new HashMap<>();
int maxCnt = Integer.MIN_VALUE;
long res = Long.MAX_VALUE;
for (int i = 0; i < n; i++) {
long num = Long.parseLong(br.readLine());
int cnt = numCounter.getOrDefault(num, 0) + 1;
if (cnt > maxCnt) {
res = num;
maxCnt = cnt;
} else if (cnt == maxCnt && res > num) {
res = num;
maxCnt = cnt;
}
numCounter.put(num, cnt);
}
Subscribe via RSS