우선순위 : 나, 이전 팀, 다음 팀
오름차순 순서대로 여분의 카약을 처리하는데, 다음 팀 먼저 줘버리면 이전 팀은 받을 기회가 아예 없어지게 된다.
import sys
def read():
return sys.stdin.readline().rstrip()
n, s, r = map(int, read().split())
damaged = set(map(int, read().split()))
extra = list(map(int, read().split()))
extra.sort()
# 우선순위 : 나, 왼쪽, 오른쪽
for x in extra:
if x in damaged:
damaged.discard(x)
continue
if x-1 in damaged:
damaged.discard(x-1)
continue
if x+1 in damaged:
damaged.discard(x+1)
print(len(damaged))