Задача к ЕГЭ по информатике на тему «прочие прототипы» №29

На вход подается натуральное число N,  затем N  натуральных чисел в порядке неубывания. Определите, на каком месте впервые встречается число 10  . В качестве ответа укажите индекс данного числа в массиве, индексация начинается с 0  .

def bin_search(a, x):
    n = len(a)
    left = -1
    right = n
    while right - left > 1:
        middle = (left + right) // 2
        if a[middle] >= x:
            right = middle
        else:
            left = middle
    if right != n and a[right] == x:
        return right
    else:
        return -1

f = open(’test.txt’)
n = int(f.readline())
a = [int(f.readline()) for i in range(n)]

print(bin_search(a, 10))

Ответ: 16
Оцените статью
Я решу все!