백준 11652 카드 JAVA

sundays·2023년 10월 3일
0

문제

카드

풀이

이 문제는 가장 많이 등장한 카드의 숫자를 구하면 되는 간단한 문제이다. 물론 카운트 배열로 구해도 되는 문제이긴 하지만 이 문제는 해시를 사용하는 문제 이기 때문에 해시맵에 카운트를 적립해주었다. 카드의 숫자는 Long 타입에 해당한다

HashMap<Long, Integer> hm = new HashMap<>();
for (int i = 0; i < n; i++) {
	long k = Long.parseLong(br.readLine());
	hm.put(k, hm.getOrDefault(k, 0) + 1);
}

long answer = 0; int count = 0;
Iterator<Map.Entry<Long, Integer>> iter = hm.getEntry().iterator();
while (iter.hasNext()) {
	Map.Entry<Long, Integer> e = iter.next();
    if (count < e.getValue() || (count == e.getValue() && answer > e.getKey())) {
    	answer = e.getKey();
        count = e.getValue();
    }
}

System.out.println(answer);

전체 코드

profile
develop life

0개의 댓글