[BOJ] 백준 1920 수 찾기

태환·2024년 2월 7일
0

Coding Test

목록 보기
60/151
post-custom-banner

📌 [BOJ] 백준 1920 수 찾기

📖 문제

📖 예제

📖 풀이

N = int(input())
N_array = list(map(int, input().split()))
M = int(input())
M_array = list(map(int, input().split()))

N_array.sort()
ans = []
for i in M_array:
  start = 0
  end = N-1
  Is = False
  while start <= end:
    mid = (start + end) // 2
    if i == N_array[mid]:
      Is = True
      break
    elif i > N_array[mid]:
      start = mid + 1
    else:
      end = mid - 1
  if Is:
    ans.append(1)
  else:
    ans.append(0)

for i in ans:
  print(i)

총 M번 투 포인터를 활용하면 되는 문제이다.
그러기 위해 비교의 대상이 되는 N_array는 오름 차순으로 정렬할 필요가 있다.

profile
연세대학교 컴퓨터과학과 석사 과정
post-custom-banner

0개의 댓글