K. Циклический сдвиг отрезка
3000 мс · 256 МБ · всё или ничего
Дан массив. Обрабатывайте запросы двух видов: 1 l r k — циклически сдвинуть отрезок влево на позиций; 2 p — вывести элемент, стоящий на позиции .
Сдвиг влево на означает, что элемент, стоявший на позиции , оказывается на позиции , а первые элементов отрезка уходят в его конец.
Формат ввода
В первой строке — числа и (). Во второй — чисел (). Далее запросов; , , .
Формат вывода
На каждый запрос второго вида выведите элемент в отдельной строке.
Примеры
ввод
5 4 1 2 3 4 5 1 2 4 1 2 2 2 4 2 5
вывод
3 2 5
ввод
1 1 42 2 1
вывод
42
Разбор идеи от автора задачи. Сначала попробуйте сами.
Войдите, чтобы отправлять решения.