Study/Algorithm

[백준] 1920번: 수 찾기, 10815번: 숫자 카드 (Python)

ZZIN33 2021. 11. 25. 18:19

1920번: 수 찾기

풀이

import sys
from collections import Counter

N = int(sys.stdin.readline())
N_list = list(map(int, sys.stdin.readline().split(' ')))

M = int(sys.stdin.readline())
M_list = list(map(int, sys.stdin.readline().split(' ')))

N_cnt = Counter(N_list)
for num in M_list:
  if N_cnt[num]:
    print(1)
  else:
    print(0)
split( )으로 input을 받아주는게 포인트
나는 몇개인지 출력하는지 알고 Counter를 사용했다.
단순히 중복 여부라면 더 가벼운 코드로 구현하지만...
통과했으니, 패스

 

10815번: 숫자 카드

풀이

import sys
from collections import Counter

N = int(sys.stdin.readline())
N_list = list(map(int, sys.stdin.readline().split(' ')))

M = int(sys.stdin.readline())
M_list = list(map(int, sys.stdin.readline().split(' ')))

N_cnt = Counter(N_list)

for num in M_list:
  if N_cnt[num]:
    print(1, end=' ')
  else:
    print(0, end=' ')
위와 동일하다. 출력문만 수정.