Интересные выходные

아직 제출이 없습니다시간 제한2초메모리 제한1024 MB

문제

Петя и его младший брат Коля пришли в аквапарк. Коля любит кататься с горки, которую можно схематически изобразить как часть треугольной сетки, вершины которой --- узлы горки. В каждом узле можно выбрать, по какой трубе ехать дальше --- влево-вниз или вправо-вниз.

Уровни горки нумеруются сверху вниз, начиная с 00. На нулевом уровне у горки один узел --- начало поездки, на первом уровне --- два узла, \ldots, на ii-м уровне --- i+1i + 1 узлов. Всего у горки n+1n + 1 уровней. Каждая поездка сверху вниз проходит ровно по nn трубам. У каждого узла есть координаты: два числа (r,c)(r, c) задают cc-й слева узел на уровне rr (0crn0 \leq c \leq r \leq n). Обратите внимание, что и уровни, и узлы на каждом уровне нумеруются с 00. Если Коля находится в узле (r,c)(r, c) и поедет влево-вниз, он попадет в узел (r+1,c)(r + 1, c), а если он поедет вправо-вниз, он попадет в узел (r+1,c+1)(r + 1, c + 1).

Пример горки в аквапарке с 5 уровнями:

Коля хочет скатиться с горки ровно n+1n + 1 раз. Перед каждым спуском Петя будет выдавать ему инструкцию, как надо спуститься по горке. Каждая инструкция состоит ровно из nn команд <<влево-вниз>> или <<вправо-вниз>> --- куда Коля должен ехать из очередного узла.

Первая инструкция состоит только из команд <<вправо-вниз>>. Пете лень придумывать новые инструкции, поэтому инструкции для двух соседних спусков отличаются только одной командой: чтобы получить инструкцию i+1i + 1 из инструкции ii, надо изменить a_ia\_i-ю команду с <<вправо-вниз>> на <<влево-вниз>> (1a_in1 \leq a\_i \leq n). Заметим, что каждая команда будет изменена таким образом ровно один раз. В результате, (n+1)(n + 1)-я инструкция будет состоять только из команд <<влево-вниз>>. Можно показать, что каждый узел будет посещен Колей хотя бы в одном из спусков.

На обратном пути из аквапарка у Коли возникло несколько вопросов следующего вида. Рассмотрим множество всех труб, по которым он проехал хотя бы один раз. Коля называет координаты двух узлов: (r_1,c_1)(r\_1, c\_1) и (r_2,c_2)(r\_2, c\_2). Вы должны определить координаты такого узла (r_3,c_3)(r\_3, c\_3), что из него по рассматриваемым трубам достижимы узлы (r_1,c_1)(r\_1, c\_1) и (r_2,c_2)(r\_2, c\_2), и среди всех таких узел (r_3,c_3)(r\_3, c\_3) является наиболее низким, то есть с максимальным возможным значением r_3r\_3. Можно показать, что такой узел всегда существует и единственен.

Ответьте на все его вопросы!

입력

В первой строке дано одно целое число nn (1n500,0001 \leq n \leq 500\\,000).

В следующей строке даны nn целых чисел a_1a\_1, a_2a\_2, \ldots a_na\_n (1a_in1 \leq a\_i \leq n), где a_ia\_i --- номер команды, которая изменится после ii-го спуска. Гарантируется, что все a_ia\_i различны.

В следующей строке дано одно целое число qq (1q500,0001 \leq q \leq 500\\,000) --- количество вопросов Коли.

В каждой из следующих qq строк даны четыре целых числа r_i,1r\_{i,1}, c_i,1c\_{i,1}, r_i,2r\_{i,2} и c_i,2c\_{i,2} (0r_i,1,r_i,2n0 \leq r\_{i,1}, r\_{i,2} \leq n; 0c_i,1r_i,10 \leq c\_{i,1} \leq r\_{i,1}; 0c_i,2r_i,20 \leq c\_{i,2} \leq r\_{i,2}) --- координаты первого и второго узлов из ii-го вопроса.

출력

Выведите qq строк, в ii-й строке выведите два целых числа r_i,3r\_{i,3} и c_i,3c\_{i, 3} --- координаты узла, являющегося ответом на ii-й вопрос.

힌트

В первом примере спуски Коли выглядят следующим образом:

(a) Спуск 1(b) Спуск 2(c) Спуск 3(d) Спуск 4

Если отметить все трубы, по которым проехал Коля в первом примере, то получится следующее: