Перетягивание каната – 2
Наверно, вы слышали историю о программистах, которые перетягивали канат. Они хотели чтобы, каждый программист посоревновался с каждым другим. Они желают поперетягивать канат снова. Но теперь они хотят, чтобы любые два программиста находились в противоположных командах по крайней мере дважды.
Количество программистов – чётное. Они проводят несколько раундов, и в каждом раунде они делятся на 2 равные команды. Программисты – очень ленивые 🙂, поэтому они хотят провести как можно меньше раундов. Какое наименьшее количество раундов, для которого существует такое распределение, чтобы любые два программиста находились в противоположных командах как минимум в двух раундах?
Например, если у нас есть программистов, пронумерованных от до , то мы можем организовать деление на команды следующим образом:
(, , , ) – (, , , );
(, , , ) – (, , , );
(, , , ) – (, , , );
(, , , ) – (, , , ).
Входные данные
Первая строка ввода содержит количество тестов (). Каждая из следующих строк содержит чётное число () – количество программистов в данном тесте.
Выходные данные
Выведите строк вида Case #A: B
, где A
– номер теста (начиная с ), B
– нужное количество раундов для заданного .