// 리스트 사용 3844ms
N, M = map(int,input().split())
origin = [input() for _ in range(N)]
cnt = 0
for _ in range(M):
ip = input()
if ip in origin:
cnt += 1
origin.remove(ip)
print(cnt)
// 딕셔너리 사용 148ms
N, M = map(int,input().split())
origin = {input() for _ in range(N)}
cnt = 0
for _ in range(M):
ip = input()
if ip in origin:
cnt += 1
print(cnt)
단지 리스트 => 딕셔너리로 바꾼 것 밖에 없는데
자료구조에 따라 시간복잡도가 확연히 차이나서 너무 놀랍다
근데 이게 왜 트리를 사용한 집합과 맵 카테고리에 있는지 모르겠다
나처럼 단순한 방법이 아니라 다른 방법이 있는건지...?