OJ

[BOJ] 1269 대칭 차집합 (JAVA)

P3PP4 2023. 6. 13. 10:00

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

 

1269번: 대칭 차집합

첫째 줄에 집합 A의 원소의 개수와 집합 B의 원소의 개수가 빈 칸을 사이에 두고 주어진다. 둘째 줄에는 집합 A의 모든 원소가, 셋째 줄에는 집합 B의 모든 원소가 빈 칸을 사이에 두고 각각 주어

www.acmicpc.net

import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.util.HashSet;
import java.util.StringTokenizer;

public class Main {
	
    public static void main(String[] args) throws Exception {

        BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
        StringTokenizer st = new StringTokenizer(br.readLine(), " ");
        int sizeA = Integer.parseInt(st.nextToken());
        int sizeB = Integer.parseInt(st.nextToken());
        HashSet<Integer> A = new HashSet<>();
        HashSet<Integer> B = new HashSet<>();
        HashSet<Integer> AB = new HashSet<>();
        HashSet<Integer> BA = new HashSet<>();
        st = new StringTokenizer(br.readLine(), " ");
        for (int i = 0; i < sizeA; i++) {
            int n = Integer.parseInt(st.nextToken());
            A.add(n);
            AB.add(n);
        }
        st = new StringTokenizer(br.readLine(), " ");
        for (int i = 0; i < sizeB; i++) {
            int n = Integer.parseInt(st.nextToken());
            B.add(n);
            BA.add(n);
        }

        for (Integer i : B) {
            AB.remove(i);
        }
        for (Integer i : A) {
            BA.remove(i);
        }

        System.out.print(AB.size() + BA.size());

    }

}