Задан массив , состоящий из чисел.
Кроме того, вам дано запросов. Запрос представляет собой два числа и . Для каждого запроса требуется найти такой подотрезок , что , а так же найдётся такое положительное целое число , что и остаток от деления на у всех чисел на подотрезке одинаковый. Найденный подотрезок должен быть максимально возможной длины.
Входные данные
В первой строке записаны числа и () – длина массива и коэффициент пересчёта (ниже описано, зачем он нужен).
Во второй строке записаны числа – элементы массива. ()
В третьей строке записано число – количество запросов ().
В каждой из следующих строк записаны по два числа и – границы для -того запроса (). Их необходимо пересчитать.
Для первого запроса числа и равны числам и .
Для -того запроса число равно , где - длина подотрезка, выведенного вами в ответ на предыдущий запрос.
Число для этого запроса считается аналогично: .
Если после пересчёта окажется, что , то их значения стоит поменять местами.
Выходные данные
В ответ на каждый запрос выведите по два числа и – границы искомого подотрезка.
Подзадачи
№ | баллы | необх. подзадачи | ограничения |
1 | 10 | - | |
2 | 10 | 1 | |
3 | 20 | 1, 2 | |
4 | 5 | - | |
5 | 10 | 4 | |
6 | 10 | - | |
7 | 35 | 1, 2, 3, 4, 5 | Нет дополнительных ограничений |
STDIN | STDOUT |
7 0 5 3 8 1 1 6 9 3 5 7 7 6 1 4 | 6 7 6 7 3 4 |