알고리즘/바이너리서치

1920번. 수 찾기

위대한루루 2019. 12. 10. 17:51

https://www.acmicpc.net/problem/1920

 

 

import sys


def binarySearch(start, end, num):
    mid = (start + end) // 2
    if nList[mid] == num:
        return 1
    if start > end:
        return 0
    if num > nList[mid]:
        start = mid + 1
    elif num < nList[mid]:
        end = mid - 1
    return binarySearch(start, end, num)


n = int(sys.stdin.readline())
nList = list(map(int, sys.stdin.readline().split()))
m = int(sys.stdin.readline())
mList = list(map(int, sys.stdin.readline().split()))

nList.sort()

for i in mList:
    print(binarySearch(0, n-1, i))