본문 바로가기
코딩 테스트/이진 탐색

고정점 찾기

by hazel_ 2021. 2. 18.

p. 368

 

def b_s(array, start, end):
  if start>end:
    return None
  mid=(start+end)//2
  if mid==array[mid]:
    return mid
  elif array[mid]>mid:
    return b_s(array, start, mid-1)
  else:
    return b_s(array, mid+1, end)
  

n= int(input())
array=list(map(int, input().split()))

result=b_s(array, 0, n-1)
if result==None:
  print(-1)
else:
  print(result)

 

주의

return 잘 사용하기..

'코딩 테스트 > 이진 탐색' 카테고리의 다른 글

기사 검색  (0) 2021.02.20
공유기 설치  (0) 2021.02.20
정렬된 배열에서 특정 수의 개수 구하기  (0) 2021.02.18
떡볶이 떡 만들기  (0) 2021.02.18
부품 찾기  (0) 2021.02.18

댓글