N,S,R = map(int,input().split())
dmg = list(map(int,input().split()))
spare = list(map(int,input().split()))
dmg_copy = dmg.copy()
for idx in range(len(dmg)):
if dmg[idx] in spare:
spare.remove(dmg[idx])
dmg_copy.remove(dmg[idx])
dmg = dmg_copy.copy()
for idx in range(len(dmg)):
if dmg[idx] - 1 in spare:
spare.remove(dmg[idx]-1)
dmg_copy.remove(dmg[idx])
elif dmg[idx] + 1 in spare:
spare.remove(dmg[idx]+1)
dmg_copy.remove(dmg[idx])
print(len(dmg_copy))
Greedy는 많이 풀어보기도 했고 실버5 문제라서 얕잡아 봤다가 큰 코 다쳤다.
문제를 제대로 안 읽어봐서 자기 자신이 가진 여분을 가장 먼저 처리해줘야하는 것을 간과하였다.
방법은 다른 분들의 풀이와 크게 다른 것은 없는 것 같아서 이 정도만 남긴다.