DHistory
[Baekjoon] Sort, Binary Search - 1920 수 찾기 본문
문제
풀이
import sys
n = int(sys.stdin.readline().rstrip())
a = list(map(int, sys.stdin.readline().rstrip().split()))
m = int(sys.stdin.readline().rstrip())
b = list(map(int, sys.stdin.readline().rstrip().split()))
def solution(a, b):
result = []
a = sorted(a)
for value in b:
if binary_search(a, value, 0, len(a) - 1) != None:
result.append(1)
else:
result.append(0)
return result
def binary_search(array, target, start, end):
while start <= end:
mid = (start + end) // 2
if array[mid] == target:
return mid
elif array[mid] > target:
end = mid - 1
else:
start = mid + 1
print(*solution(a, b), sep="\n")
채점 결과
'Computer Science > Algorithm' 카테고리의 다른 글
[Baekjoon] Sort - 1764 듣보잡 (0) | 2023.09.09 |
---|---|
[Baekjoon] Sort - 10816 숫자 카드 2 (0) | 2023.09.09 |
[Baekjoon] Sort - 1251 단어 나누기 (0) | 2023.09.08 |
[Baekjoon] Sort - 5800 성적 통계 (0) | 2023.09.08 |
[Baekjoon] Sortt - 11931 수 정렬하기 4 (0) | 2023.09.08 |