Вы - руководитель команды по разработке программных продуктов. В настоящее время вместе с командой занимаетесь выпуском нового релиза. К сожалению, последний релиз не прошел проверку качества. Поскольку каждый следующий релиз разрабатывается на основе предыдущих, все версии следующие за неудачной, также неудачны.
Вы уже выпустили
n
версий
[1, 2, ..., n]
и забыли проверить на качество все, кроме последней. Теперь, вы хотите найти первую плохую версию, которая приводит к тому, что все последующие становятся плохими.
Руководитель отдела качества очень хорошо к вам относится и написал для вас функцию
isBadVersion(version)
, которая определяет является ли версия релиза плохой (возвращает
True
, если версия плохая, и
False
если хорошая).
Теперь вам необходимо реализовать функцию для поиска первой плохой версии. Вы должны как можно быстрее определить с какой версии пошел плохой релиз, поэтому количество использования функции
isBadVersion(version)
должно быть минимальным.
Ваша функция должна вернуть номер первого плохого релиза.