Кабінки в убиральні#8693

Кабінки в убиральні

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

В убиральні в рядок розташовані n + 2 кабінки. Кабінки на лівому і правому кінцях завжди зайняті охоронцями. Решта кабінок призначені для користувачів.

Кожного разу, коли хтось заходить в убиральню, він намагається вибрати кабінку, максимально віддалену від інших людей. Щоб уникнути плутанини, вони дотримуються певних правил: для кожної порожньої кабінки обчислюються два значення l_s і r_s, які є кількістю порожніх кабінок між і найближчою зайнятою кабінкою зліва і справа відповідно. Потім розглядається множина кабінок з найдальшим найближчим сусідом, тобто ті , для яких \min(l_s, r_s) є максимальним. Якщо така кабінка єдина, то вибирається саме вона; в іншому випадку вибирається та з кабінок, де \max(l_s, r_s) є максимальним. Якщо і таких кабінок виявиться кілька, то вибирається найліва з них.

людей збираються увійти в убиральню. Кожен вибирає собі кабінку до приходу наступної людини. Ніхто ніколи не виходить.

Коли остання людина вибирає свою кабінку , чому дорівнює значення \max(l_s, r_s) і \min(l_s, r_s)?

Вхідні дані

Перший рядок містить кількість тестів (1 \le t \le 100). Далі слідують рядків. Кожен рядок містить два цілих числа (1 \le n \le 10^{18}) і (1 \le k \le n).

Вихідні дані

Для кожного тесту виведіть один рядок, що містить Case #x: y z, де номер тесту (починаючи з ), дорівнює \max(l_s, r_s), дорівнює \min(l_s, r_s) - ці значення підраховані для останньої людини, яка увійшла в убиральню і вибрала кабінку .

Приклади

Приклад 1

Loading
Loading