반복문
n, target = map(int, input().split())
array = list(map(int, input().split()))
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
return None
result = binary_search(array,target,0,n - 1)
if result == None:
print('원소가 존재하지 않습니다')
else:
print(result + 1)
재귀
n, target = map(int, input().split())
array = list(map(int, input().split()))
def binary_search(array, target, start, end):
if start > end:
return None
mid = (start + end) // 2
if array[mid] == target:
return mid
elif array[mid] > target:
return(binary_search(array, target, start, mid - 1))
else:
return(binary_search(array, target, mid + 1, end))
result = binary_search(array,target,0,n - 1)
if result == None:
print('원소가 존재하지 않습니다')
else:
print(result + 1)