본문 바로가기
Js&React 실습

220413

by sweesweet 2022. 4. 13.

이 책을 어제부터 읽고있는데 ㅋㄷㅅㅌㅇㅊ ㄱㅂ 지원 문제 중 하나가 이진 탐색을 말로 풀어 썼다는 사실을 알게 되었다. 

 0에서 100까지의 숫자중 하나를 찾는 이진 탐색이라면 

총횟수는 log₂101 겠지...? 한번 파이썬으로 조잡하게 짜보았다(맞는지는 모름)

(왜이렇게 더럽나요? 죄송) 아마 이렇게 리스트에 넣지않고할것같지만 ...

더보기

li=[]
for i in range(0,101):
  li.append(i)# 0부터 100까지의 리스트 만들기...
a=int(input('1~100 사이의 숫자를 입력해주세요'))#숫자입력받기
count=0
while len(li)!=1:
  if a>(li[int(len(li)/2)]):
    li=li[int((len(li)/2)): ]
    count+=1
  elif a<(li[int(len(li)/2)]):
    li=li[0:int((len(li)/2))]
    count+=1
  else:
    count+=1
    break
if len(li)==1:
  print('혹시 입력하신 숫자가',li[0],'인가요?^^')
  print('총 횟수는',count)
else:
  print('혹시 입력하신 숫자가',li[int(len(li)/2)],'인가요?^^')
  print('총 횟수는',count)

 

'Js&React 실습' 카테고리의 다른 글

220330  (0) 2022.03.30
220211 오늘들을것  (0) 2022.02.11
정말 개발일지는 부지런해야 쓰는구나  (0) 2022.02.08
백준 실버1이 되었다  (0) 2021.12.13