[백준 10816] 숫자 카드 2(실버 4) 문제 풀이- 파이썬 python

2023. 1. 12. 20:15네카라쿠배 취준반 - 프로그래머스 문제 풀이

0. 자세한 설명은 YouTube 영상으로

 

 

1. 해시를 활용한 풀이

import sys

# 0. 입력 및 초기화
input = sys.stdin.readline
N = int(input())
a = map(int, input().split())

# 1. hash에 num 개수 반영
hash = {}
for num in a:
    hash[num] = hash.setdefault(num, 0) + 1

# 2. hash에서 num 개수 출력
M = int(input())
b = map(int, input().split())
for num in b :
    print(hash.setdefault(num, 0), end = ' ')

 

 

 

 

2. 배열을 활용한 풀이

import sys
input = sys.stdin.readline
MAX = 20000000 + 10
cnt = [0] * MAX

N = int(input())
a = map(int, input().split())
for num in a:
    cnt[num + 10000000] += 1

M = int(input())
b = map(int, input().split())
for num in b:
    print(cnt[num + 10000000], end = ' ')
반응형