Algorithms

백준 10816. 숫자 카드 2

Brian Go 2022. 6. 7. 04:06

쉬웠다 ! 딕셔너리를 활용할 생각을 하면 그다지 어려웠던 문제는 아니었던 듯.

모든 카드에 대해서 딕셔너리의 값을 카운트로 넣고, get()의 값이 None이면 0을 출력하고 아니라면 딕셔너리에 저장된 카운트를 출력하는 방법.

확실히 리스트를 이용하지 않은 방법이 훨씬 빠른 것 같다.

n = int(input())
lst = list(map(int, input().split()))
dic = {}
for i in lst:
	if dic.get(i) == None:
		dic[i] = 1
	else:
		dic[i] += 1
m = int(input())
lst = list(map(int, input().split()))
for i in lst:
	if dic.get(i) == None:
		print(0, end=" ")
	else:
		print(dic[i], end=" ")
print()