Бочки
(Время: 1 сек. Память: 256 Мб Сложность: 75%)
В городе строится T новых зданий. У каждого здания есть N одинаковых бочек с краской и K этажей строительных лесов. Из-за некоторых особенностей технологического процесса действуют следующие правила:
- На первый ярус (номер 1) можно поставить или убрать бочку в любой момент.
- Поставить бочку на ярус i или убрать её оттуда разрешается только при наличии бочки на ярусе i − 1.
- Работы заканчиваются, когда бочка впервые окажется на ярусе с номером K.
Найдите минимальное число действий и сообщите отдельно количество установок и снятий. Если невозможно решить задачу по заданным правилам, то необходимо вывести «-1 -1».
Входные данные
В первой строке входного файла INPUT.TXT находится натуральное число T – количество зданий (1 ≤ T ≤ 105).
В каждой из следующих T строках находится по два натуральных числа N и K (1 ≤ N ≤ 18, 1 ≤ K ≤ 106).
Выходные данные
В выходной файл OUTPUT.TXT для каждого здания выведите ответ на задачу.
Пример
| № | INPUT.TXT | OUTPUT.TXT |
| 1 | 2 3 6 2 10 | 6 3 -1 -1 |
Пояснение к примеру
В первом тесте в первом здании можно сделать следующие действия:
- Установить на 1 ярус.
- Установить на 2 ярус.
- Установить на 3 ярус.
- Снять со 2 яруса.
- Снять с 1 яруса.
- Установить на 4 ярус.
- Установить на 5 ярус.
- Снять с 4 яруса.
- Установить на 6 ярус.
Автор задачи
Владимир Игоревич Лукьянчиков
Для отправки решения задачи необходимо зарегистрироваться и авторизоваться!
|