숫자카드 10815
상근이가 가지고 있는 카드 갯수 첫째줄 입력 둘째 줄 숫자 카드 입력 셋째 줄 찾아야할 카드 갯수 입력 넷째 줄 찾아야할 숫자 카드 입력 이 중 숫자카드를 상근이가 가지고 있으면 1번 아니면 0을 출력
- 그동안 수없이 많이 했던 이진탐색.
import sys
def binarySearch(L, x):
start = 0
end = len(L)-1
while(start <= end):
middle = (start+end)//2
if L[middle] == x:
return 1 # index가 아닌 1 리턴
elif(L[middle] > x):
end = middle - 1
else:
start = middle + 1
return 0
N = int(sys.stdin.readline())
arr = list(map(int, sys.stdin.readline().split()))
arr.sort()
N2 = int(sys.stdin.readline())
arr2 = list(map(int, sys.stdin.readline().split()))
for i in arr2:
print(binarySearch(arr, i), end=" ")
참고자료