Java

[백준 22233] 가희와 키워드 (JAVA)

iheeeee6-6 2023. 4. 23. 20:47
728x90

https://www.acmicpc.net/problem/22233

 

22233번: 가희와 키워드

1번째 글을 쓰고 난 후에, 메모장에 있는 키워드는 set, floyd, os가 됩니다. 2번째 글을 쓰고 난 후에, 메모장에 있는 키워드는 set, os가 됩니다. map은 1번째 글과 2번째 글에 중복으로 등장하였음을

www.acmicpc.net

 

map을 이용하여 메모장의 키워드들을 넣어준다.

count 변수는 처음에 n으로 세팅하고,

글을 쓰면서 사용하게 되는 키워드의 개수를 뺀다!

 

    import java.io.*;
    import java.util.*;

    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, m;
            StringTokenizer st = new StringTokenizer(br.readLine());
            n = Integer.parseInt(st.nextToken());
            m = Integer.parseInt(st.nextToken());
            Map<String, Boolean> map = new HashMap<>();
            for (int i = 0; i < n; i++) {
                map.put(br.readLine(), true);
            }
            
            int count = n;
            for (int i = 0; i < m; i++) {
                st = new StringTokenizer(br.readLine(), ",");
                while (st.hasMoreTokens()) {
                    String s = st.nextToken();
                    if (map.containsKey(s)) {
                        map.remove(s);
                        count--;
                    }
                }
                bw.write(count + "\n");
            }
            bw.flush();
        }
    }

'Java' 카테고리의 다른 글

[백준 20437] 문자열 게임2 (JAVA)  (0) 2023.04.25
[백준 1446] 지름길 (JAVA)  (0) 2023.04.24
[백준 14940] 쉬운 최단거리(JAVA)  (0) 2023.04.23
[백준 19941] 햄버거 분배  (0) 2023.04.22
[백준 1781] 컵라면 (JAVA)  (0) 2023.04.21