본문 바로가기
Problem Solving/Baekjoon

[백준] 11652 카드 - Data Structure / Java

by graycode 2023. 2. 3.

 문제 링크

 

11652번: 카드

준규는 숫자 카드 N장을 가지고 있다. 숫자 카드에는 정수가 하나 적혀있는데, 적혀있는 수는 -262보다 크거나 같고, 262보다 작거나 같다. 준규가 가지고 있는 카드가 주어졌을 때, 가장 많이 가지

www.acmicpc.net

 

 풀이 과정

 

 풀이 코드

import java.io.BufferedReader;
import java.io.BufferedWriter;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.OutputStreamWriter;
import java.util.HashMap;
import java.util.Map;

public class Main {

    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 n = Integer.parseInt(br.readLine());

        Map<Long, Integer> map = new HashMap<>();

        long res = 0;
        int max = 0;
        while (n-- > 0) {
            long key = Long.parseLong(br.readLine());
            map.put(key, map.getOrDefault(key, 0) + 1);

            if (map.get(key) > max) {
                max = map.get(key);
                res = key;
            } else if (map.get(key) == max)
                res = Math.min(res, key);
        }

        bw.write(String.valueOf(res));
        bw.flush();
    }

}

댓글