
역시나 정렬 문제이고, 이진 탐색을 사용했다.
n = int(input())
arr = list(map(int, input().split()))
m = int(input())
brr = list(map(int, input().split()))
arr.sort()
def bin(arr, k): #이진 탐색
start = 0
end = n - 1
while start <= end:
mid = (start + end) // 2
if k < arr[mid]:
end = mid - 1
elif k == arr[mid]:
return 1
else:
start = mid + 1
return 0
for i in range(m):
if arr[0] > brr[i] or arr[-1] < brr[i]:
print(0)
else:
print(bin(arr, brr[i]))
'프로그래밍 언어 > 파이썬' 카테고리의 다른 글
백준 > 2869 달팽이는 올라가고 싶다 (0) | 2024.03.30 |
---|---|
백준 > 9012 괄호 (0) | 2024.03.28 |
백준 > 1929 소수 구하기 (0) | 2024.03.02 |
백준 > 10989 수 정렬하기 3 (0) | 2024.02.29 |
백준 > 11656 접미사 배열 (0) | 2024.02.24 |