Олимпиадный тренинг

Задача . A. Плей-офф


Задача

Темы: реализация *800

Рассмотрим турнир по системе плей-офф, в котором участвуют \(2^n\) спортсменов. Спортсмены пронумерованы от \(1\) до \(2^n\).

Турнир проходит в \(n\) этапов. На каждом этапе спортсмены делятся на пары таким образом, что каждый оказывается ровно в одной паре. В каждой паре атлеты соревнуются друг с другом, и один из них побеждает. Победитель проходит в следующий этап турнира, проигравший покидает турнир.

Пары формируются следующим образом:

  • на первом этапе спортсмен \(1\) соревнуется со спортсменом \(2\); \(3\) соревнуется с \(4\); \(5\) соревнуется с \(6\), и так далее;
  • на втором этапе победитель пары «\(1\)\(2\)» соревнуется с победителем пары «\(3\)\(4\)»; победитель пары «\(5\)\(6\)» соревнуется с победителем пары «\(7\)\(8\)», и так далее;
  • следующие этапы проходят по той же закономерности.

Когда соревнуются спортсмены \(x\) и \(y\), победитель выбирается следующим образом:

  • если \(x+y\) нечетно, побеждает спортсмен с меньшим номером (то есть, если \(x < y\), то побеждает \(x\), иначе побеждает \(y\));
  • если \(x+y\) четно, побеждает спортсмен с большим номером.

На картинке показано, как проходит турнир при \(n = 3\).

Ваша задача состоит в следующем: по заданному числу \(n\) определите номер спортсмена, который будет победителем турнира.

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

В первой строке задано одно целое число \(t\) (\(1 \le t \le 30\)) — количество наборов входных данных.

Каждый набор входных данных состоит из одной строки, содержащей единственное целое число \(n\) (\(1 \le n \le 30\)).

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

Для каждого набора входных данных выведите одно целое число — номер победителя турнира.

Примечание

Случай \(n = 3\) разобран на картинке в условии.

Если \(n = 1\), то в турнире соревнуются только спортсмены \(1\) и \(2\). Так как \(1 + 2 = 3\) — нечетное число, спортсмен с меньшим номером побеждает. Поэтому спортсмен \(1\) — победитель турнира.


Примеры
Входные данныеВыходные данные
1 2
3
1
7
1

time 2000 ms
memory 512 Mb
Правила оформления программ и список ошибок при автоматической проверке задач

Статистика успешных решений по компиляторам
 Кол-во
С++ Mingw-w645
Комментарий учителя