Skip to content

Instantly share code, notes, and snippets.

@dvmn-tasks
Last active February 11, 2025 13:09
Show Gist options
  • Save dvmn-tasks/2bc5a09d67723164fc4f5f778e69858b to your computer and use it in GitHub Desktop.
Save dvmn-tasks/2bc5a09d67723164fc4f5f778e69858b to your computer and use it in GitHub Desktop.
Упражнение на чтение кода №1 "Разбираемся в чужом алгоритме".
from random import sample
def s(list_, target):
left, right = 0, len(list_) - 1
while left <= right:
middle = (left + right) // 2
if list_[middle] < target:
left = middle + 1
elif list_[middle] > target:
right = middle - 1
else:
return middle
return
if __name__ == "__main__":
list_len = 10
rand_list = sorted(sample(range(0, 101, 2), list_len))
try:
target = int(input('Pick a number between 0-100: '))
target_index = s(rand_list, target)
print(f'List: {rand_list}')
if target_index is not None:
print(f'Found {target} in index {target_index}')
else:
print(f'Cannot find {target} in the list')
except ValueError:
print('Invalid input')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment