https://www.acmicpc.net/problem/10816
내 풀이
from collections import defaultdict
def solution():
n=int(input())
lists = list(map(int,input().split()))
m = int(input())
candi = list(map(int,input().split()))
number_of_candi=defaultdict(int)
for i in lists:
number_of_candi[i] +=1
for i in candi:
if i in number_of_candi:
print(number_of_candi[i],end=' ')
else:
print(0,end=' ')
solution()
딱 보자마자 생각난건 defaultdict였다.
하나 실수한게 candi에 있는걸 lists 로 추적하면 갯수가 안맞는다. 가령 10을 추적하면 1번 밖에 안나올것이다.
CANDI와 Lists에 공통적으로 존재하는 숫자의 갯수를 찾는거기때문에
lists에 있는걸 defaultdict에 넣고, 그걸 반대로 candi로 추적해야한다.
다른사람의 풀이
'취준 > 백준' 카테고리의 다른 글
2504 - 파이썬 (0) | 2022.11.17 |
---|---|
1939(중량제한) - 파이썬 (0) | 2022.11.01 |
1806(부분합) - 파이썬 (0) | 2022.10.24 |
1238 - 파이썬 (0) | 2022.10.24 |
25755 - 파이썬 (0) | 2022.10.21 |