1929번 중복 검사하기

코린이서현이·2024년 3월 12일
0

문제

N개의 정수 A[1], A[2], …, A[N]이 주어져 있을 때, 이 안에 X라는 정수가 존재하는지 알아내는 프로그램을 작성하시오.

입력

첫째 줄에 자연수 N(1 ≤ N ≤ 100,000)이 주어진다. 다음 줄에는 N개의 정수 A[1], A[2], …, A[N]이 주어진다. 다음 줄에는 M(1 ≤ M ≤ 100,000)이 주어진다. 다음 줄에는 M개의 수들이 주어지는데, 이 수들이 A안에 존재하는지 알아내면 된다. 모든 정수의 범위는 -231 보다 크거나 같고 231보다 작다.

5
4 1 5 2 3
5
1 3 7 9 5

출력

M개의 줄에 답을 출력한다. 존재하면 1을, 존재하지 않으면 0을 출력한다.

1
1
0
0
1

문제풀이

단순하게 중복 없이 포함 유무만 판별하면 되는 문제로 파이썬의 in을 활용했다.

import sys

n = int(sys.stdin.readline())
n_set = set(map(int, input().split()))

m = int(sys.stdin.readline())
m_set = list(map(int, input().split()))

str = []
for i in m_set:
    if i in n_set:
        str.append(1)
    else:
        str.append(0)

for i in str:
    print(i)

참고 자료

[백준 1920] 수 찾기 - 해시, 이분탐색, Counter, Set

profile
24년도까지 프로젝트 두개를 마치고 25년에는 개발 팀장을 할 수 있는 실력이 되자!

0개의 댓글