IT's 우

[java] 백준 - 문자열 집합 본문

알고리즘/백준

[java] 백준 - 문자열 집합

디우 2023. 8. 24. 03:26
728x90
 

📖 풀이한 문제


💡 문제에서 사용된 알고리즘

  • HashSet(HashSet으로 풀었지만 그냥 리스트로도 가능해서 HashSet을 이용해야하는 문제는 아님)

📜 코드 설명

  • 집합 S의 용도로 HashSet을 사용하여 N개의 문자열을 set에 넣었다.
  • M개의 문자열을 set에 들어있는지 확인하였는데 들어있다면 정답 answer을 1 늘려주었다.

📜 코드

public class Main {
    public static void main (String[] args) throws IOException{
        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine());
        int N = Integer.parseInt(st.nextToken());
        int M = Integer.parseInt(st.nextToken());

        // set에 집합S에 해당하는 문자열을 넣었다.
        HashSet<String> set = new HashSet<>();

        // 정답의 개수
        int answer = 0;

        // N개의 문자열을 set에 넣어준다.
        for (int i = 0; i < N; i++) {
            set.add(br.readLine());
        }

        // M개의 문자열을 set에 들어있는지 확인한다.
        for (int i = 0; i < M; i++) {
            // set에 포함한다면 answer++
            if (set.contains(br.readLine())) answer++;
        }
        System.out.println(answer);
    }
}
728x90
반응형