반응형
파이썬 / BOJ 백준 / 10816 숫자 카드 2- Dictionary
https://www.acmicpc.net/problem/10816
문제
숫자 카드는 정수 하나가 적혀져 있는 카드이다. 상근이는 숫자 카드 N개를 가지고 있다. 정수 M개가 주어졌을 때, 이 수가 적혀있는 숫자 카드를 상근이가 몇 개 가지고 있는지 구하는 프로그램을 작성하시오.
문제 풀이
1. Dictionary를 이용하여 쉽게 풀 수 있는 문제입니다.
2. 해당 주소에 값이 있으면, 그 값에 +1을 해줍니다.
3. 해당 주소에 값이 없으면, 값을 추가합니다.
전체 코드
import sys
n = int(sys.stdin.readline().strip())
n_list = list(map(int, sys.stdin.readline().split()))
m = int(sys.stdin.readline().strip())
m_list = list(map(int, sys.stdin.readline().split()))
d = dict()
for i in n_list:
if i in d.keys():
d[i] += 1
else:
d[i] = 1
for i in m_list:
if i in d.keys():
print(d[i], end=' ')
else:
print(0, end=' ')
반응형
'BOJ 백준 알고리즘 > 이분 탐색' 카테고리의 다른 글
파이썬 / BOJ 백준 / 1920 수 찾기 - 이분 탐색 (0) | 2021.11.01 |
---|