10971. Переворот


Відправити розв'язок

Бали: 100
Time limit: 2.0s
Memory limit: 500M

Authors:
Problem type
Allowed languages
C++, Java, Pascal, Python

Дано масив. Потрібно навчитися обробляти два типи запитів.

  • 1 L R - перевернути відрізок [\(𝐿,𝑅\)]
  • 2 L R - знайти мінімум на відрізку [\(𝐿,𝑅\)]

Формат вхідних даних

Перший рядок файлу містить два числа \(𝑛 , 𝑚\) (\(1≤𝑛,𝑚≤10^5\) )

У другому рядку знаходиться \(𝑛\) чисел \(𝑎_𝑖\) (\(1≤𝑎_𝑖≤10^9\) ) - вихідний масив.

Інші \(𝑚\) рядків містять запити, у форматі описаному в умові. Для чисел \(𝐿 , 𝑅\) виконується обмеження (\(1≤𝐿≤𝑅≤𝑛 \)).

Формат вихідних даних

На кожен запит типу 2 у вхідний файл виведіть відповідь на нього в окремому рядку.

Приклад вхідних даних

10 7
5 3 2 3 12 6 7 5 10 12
2 4 9
1 4 6
2 1 8
1 1 8
1 8 9
2 1 7
2 3 6

Приклад вихідних даних

3
2
2
2

Коментарі

Ще немає коментарів.