가지고 있는 카드의 숫자를 key로 하고 카드의 개수를 value로하는 사전 자료형을 이용해서 문제를 해결했다. 그 이유는 list보다 사전 자료형이 검색이 더 빠르기 때문이다. 즉, 몇 개 가지고 있는지 알아보고싶은 숫자카드를 정렬하는 것보다는 사전 자료형을 이용해서 카드 번호를 key로해서 검색하는게 더 빠르기 때문이다.
import sys
sys.stdin.readline()
card_list = dict()
for data in sys.stdin.readline().split():
if data not in card_list:
card_list[data] = 0
card_list[data] += 1
sys.stdin.readline()
answer = []
for find_num in sys.stdin.readline().split():
if find_num not in card_list:
answer.append('0')
else:
answer.append(str(card_list[find_num]))
sys.stdout.write(' '.join(answer))
사전 자료형을 이용해서 크게 어려웠던 점은 없었다.
for _ in (이 부분): 이 부분에 sys.stdin.readline()을 이용해서 입력값을 바로 사용할 수 있다는 것을 알았다.