https://school.programmers.co.kr/learn/courses/30/lessons/42862
def solution(n, lost, reserve):
# 전체 학생 수, 도난당한 학생 번호 배열, 여벌 체육복 가져온 학생 번호 배열
# 여벌 체육복을 가져온 학생이 체육복을 도난 당했을 경우
# 리스트로 하면 에러나서 set으로 차집합 연산
set_reserve = set(reserve) - set(lost)
set_lost = set(lost) - set(reserve)
for i in set_reserve:
if i - 1 in set_lost:
set_lost.remove(i - 1)
elif i + 1 in set_lost:
set_lost.remove(i + 1)
return n - len(set_lost) # 전체 길이 - 도난 당한 학생 수
list끼리 - 연산은 안된다. set으로 하면 차집합 연산 수행
set의 remove는 O(1)