알고리즘/백준
1269번 : 대칭 차집합
코딍코딍
2023. 1. 2. 15:09
https://www.acmicpc.net/problem/1269
1269번: 대칭 차집합
첫째 줄에 집합 A의 원소의 개수와 집합 B의 원소의 개수가 빈 칸을 사이에 두고 주어진다. 둘째 줄에는 집합 A의 모든 원소가, 셋째 줄에는 집합 B의 모든 원소가 빈 칸을 사이에 두고 각각 주어
www.acmicpc.net
문제
소스코드
import java.io.*;
import java.util.HashSet;
import java.util.StringTokenizer;
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));
HashSet<String> set = new HashSet();
StringTokenizer st = new StringTokenizer(br.readLine(), " ");
int aCnt = Integer.parseInt(st.nextToken());
int bCnt = Integer.parseInt(st.nextToken());
st = new StringTokenizer(br.readLine(), " ");
for(int i=0;i<aCnt;i++) {
set.add(st.nextToken());
}
int result = aCnt;
st = new StringTokenizer(br.readLine(), " ");
for(int i=0;i<bCnt;i++) {
if(set.add(st.nextToken()) == true) result+=1;
else result-=1;
}
bw.write(result+""); bw.flush();
}
}
해결방법
대칭 차집합
=> A만 가진거 + B만 가진거
즉, 중복되지 않는 것의 개수만 구하면 해결된다.