문제 :
https://www.acmicpc.net/problem/1269
1269번: 대칭 차집합
첫째 줄에 집합 A의 원소의 개수와 집합 B의 원소의 개수가 빈 칸을 사이에 두고 주어진다. 둘째 줄에는 집합 A의 모든 원소가, 셋째 줄에는 집합 B의 모든 원소가 빈 칸을 사이에 두고 각각 주어
www.acmicpc.net
Code:
import sys
# 첫 번째 리스트를 입력으로 받습니다.
l = sys.stdin.readline()
# 첫 번째 리스트의 요소들을 읽어와서 정수로 변환하고, 중복을 제거하여 집합으로 만듭니다.
l1 = set(map(int, sys.stdin.readline().split()))
# 두 번째 리스트의 요소들을 읽어와서 정수로 변환하고, 중복을 제거하여 집합으로 만듭니다.
l2 = set(map(int, sys.stdin.readline().split()))
# 대칭차집합 연산을 수행하여 두 리스트 간에 공통되지 않는 요소들의 개수를 구합니다.
# 대칭차집합 연산은 | 연산자를 사용하여 수행됩니다.
# | 연산자는 왼쪽 집합과 오른쪽 집합의 합집합을 반환합니다.
# 여기서는 두 집합의 차집합을 각각 계산하고, 이를 합집합으로 구함으로써 대칭차집합을 얻습니다.
result = (l1 - l2) | (l2 - l1)
# 대칭차집합의 요소들의 개수를 출력합니다.
print(len(result))
'코딩테스트 > 백준-Python' 카테고리의 다른 글
[백준 Python] 1193번 분수찾기 (실버5) (4) | 2024.04.03 |
---|---|
[백준 Python] 1316번 그룹 단어 체커 (실버5) (0) | 2024.03.20 |
[백준 Python] 2941번 크로아티아 알파벳 (실버5) (0) | 2024.03.20 |
[백준 Python] 25206번 너의 평점은 (실버5) (0) | 2024.03.20 |