백준
백준 10816번 어떻게 풀었나.
kimbro6
2023. 1. 10. 00:01
- 푼 방법
- 10815번과 비슷한 문제여서 복붙한 다음 수정했다.
- 10815번 문제와 다른 것은 숫자까지 새야 되는 것이다.
- 상근이가 뽑은 숫자 카드에 적혀있는 수의 갯수를 딕셔너리에 저장했다.
- key : value = (카드에 적혀있는 수) : (수의 갯수)
- 몇개가지고 있는지 인덱스에 따라서 출력해 줬다.
- 새롭게 안 부분
- print()는 호출 자체로 시간이 많이 걸린다.
출처: https://www.acmicpc.net/board/view/106637#comment-168803
- print()는 호출 자체로 시간이 많이 걸린다.
코드
import sys
N = int(input())
A = list(sys.stdin.readline().split())
A_counting = dict()
M = int(input())
cheaklist = list(sys.stdin.readline().split())
for i in A:
if i in A_counting:
A_counting[i] += 1
else:
A_counting[i] = 1
ret = []
for k in cheaklist:
if k in A_counting:
ret.append(str(A_counting[k]))
else:
ret.append("0")
print(" ".join(ret))