Задача №112136. Гадание перестановки

Олимпиада завершена. Режим дорешивания.
Гадание перестановки
ограничение по времени на тест
2 секунды
ограничение по памяти на тест
512 мегабайт
ввод
stdin
вывод
stdout

Это интерактивная задача.

Мы загадали перестановку a длины n, и вы должны ее угадать.

Вы можете задавать вопрос: какая наибольшая общая подпоследовательность перестановки a и перестановки b.

Протокол взаимодействия с тестирующей системой

Для начала, ваша программа должна считать одно число n — длину перестановки.

Затем, ваша программа должна вывести перестановку на стандартный поток вывода, и ждать одно число — ответ на ваш запрос. Затем ваша программа должна вывести следующий запрос, и так до тех пор, пока ответ на ваш запрос не будет равен n.

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

Первая строка входного файла содержит число n, длину перестановки (1 ≤ n ≤ 40).

Каждая следующая строка входного файла содержит одно число — длину наибольшей общей подпоследовательности перестановки a и перестановки в вашем запросе.

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

Каждая строка выходного файла — это последовательность чисел, разделенная пробелом, которая формирует перестановку.

Вы можете сделать не более 5 * n2 запросов.

Вы должны сбрасывать поток вывода, после каждого запроса. Для этого используйте: Для последнего используйте

  • flush(output) в паскале или Delphi;
  • fflush(stdout) или cout.flush() в С/C++;
  • sys.stdout.flush() в Python;
  • Console.out.flush() в Visual Basic.

Вы не должны выводить никакие строки, если ответ на ваш запрос стал равен n.

В задаче 50 тестов, каждый оценивается в 2 балла

Примеры тестов

Входные данные
4
3
2
2
4
Выходные данные
1 2 3 4
1 3 4 2
4 1 2 3
3 1 2 4
Сдать: для сдачи задач необходимо войти в систему