eolymp
bolt
Попробуйте наш новый интерфейс для отправки задач
Задачи

Бинарный поиск

Бинарный поиск

Лимит времени 2 секунды
Лимит использования памяти 16 MiB

Следующий фрагмент кода выполняет бинарный поиск целого числа в массиве, который отсортирован в неубывающем порядке:

Перед вызовом BinarySearch, N присвоено некоторое число от 1 до 10000 включительно, а массив A содержит целочисленную неубывающую последовательность.

Известно, что процедура остановится с сообщением "Found item i = XXX in L = XXX comparisons" для некоторых найденных значений i и L.

Напишите программу, которая находит все возможные значения N, ведущих к такому сообщению. Однако количество возможных N может быть велико. Поэтому следует сгруппировать в интервалы последовательные N-ки и вывести только первое и последнее значение каждого интервала.

Входные данные

В одной строке содержится для целых числа i и L (0 i < 10000, 1 L 14).

Выходные данные

В первой строке вывести количество интервалов K всех возможных значений N. В следующих K строках вывести эти интервалы в возрастающем порядке. Каждая строка содержит два числа A_i и B_i (A_iB_i), задающие начальную и конечную границу интервала.

Если искомых значений N не существует, то вывести одно число 0.

Пример

Входные данные #1
9000 2
Выходные данные #1
0
Источник 2000-2001 ACM Northeastern European Regional Programming Contest