Вибір морозива#8327

Вибір морозива

1 секунда
128 мегабайтів
Середня

Ви стоїте перед морозильниками в супермаркеті, намагаючись вибрати тип морозива, яке хочете з'їсти після обіду. Завдання виявляється складним, адже все морозиво виглядає чудово! Тому ви вирішуєте довіритися випадковості, діставши з кишені свій чесний -гранний кубик.

Однак, кількість варіантів морозива може не відповідати кількості граней на кубику. Це означає, що ви не можете просто кинути кубик один раз, щоб вибрати -ий тип морозива. Вам потрібно знайти алгоритм, який включає нуль або більше кидків кубика, щоб вибір був рівноімовірним для кожного варіанту. Як досвідчений програміст, ви знаєте про метод прийняття-відхилення, який дозволяє зробити такий чесний вибір.

Проте сьогодні у вас важливе змагання, і ви не можете дозволити собі запізнитися. Тому метод прийняття-відхилення не підходить, адже він не гарантує обмежену кількість кидків. Ви вирішуєте знайти інший чесний алгоритм, який використовує найменшу кількість кидків у найгіршому випадку.

Для заданих і потрібно визначити найменше число , для якого існує справедливий алгоритм, що вимагає не більше кидків кубика для вибору морозива.

prb8327.gif

Вхідні дані

Перший рядок містить кількість тестів, не більше . Далі для кожного тесту:

  • один рядок з двома цілими числами і (1 \leq n, k \leq 10^9): кількість варіантів морозива і кількість граней на кубику.

Вихідні дані

Для кожного тесту виведіть в окремому рядку найменшу кількість кидків, після яких ви гарантовано зможете зробити правильний вибір. Якщо такої кількості не існує, виведіть "unbounded".

Приклади

Приклад 1

Loading
Loading