H. Интерактивное слияние
Это интерактивная задача.
Жюри загадало два отсортированных по возрастанию массива: и . Все элементы обоих массивов попарно различны. Элементу жюри дало метку , элементу — метку . Затем жюри слило массивы в один и отсортировало его по возрастанию; получилась последовательность меток — перестановка из чисел.
Назовите эту перестановку, задав не более 20 вопросов. Каждый вопрос — набор не более чем пар индексов ; жюри отвечает строкой из нулей и единиц: ноль означает , единица — что нет.
Формат ввода
В начале взаимодействия считайте два числа и ().
Формат вывода
Чтобы задать вопрос, выведите строку ? q i_1 j_1 i_2 j_2 … — количество пар и сами пары (, , ). В ответ придёт строка из символов.
Чтобы назвать ответ, выведите ! и затем чисел — искомую перестановку меток. После этого завершите работу. Вопросов не больше 20, после каждого вывода делайте flush.
Примеры
2 2 10
? 2 1 1 1 2 ! 3 1 2 4