#177. 超级备忘录

超级备忘录

题目描述

你的朋友达达被邀请参加一个叫做“超级备忘录”的电视节目。

在这个节目中,参与者需要玩一个记忆游戏。

在一开始,主持人会告诉所有参与者一个数列,A1 ,A2 ,,An \red {A _1~ ,A _2~ ,…,A_n~}

接下来,主持人会在数列上做一些操作,操作包括以下几种:

1、ADD x y D\red {ADD ~x ~y ~D}:给子序列{Ax ,,Ay }\red {\{A_x~ ,…,A_y~\}}统一加上一个数D\red {D}。例如,在{1,2,3,4,5}\red {\{1, 2, 3, 4, 5\}}上进行操作ADD 2 4 1\red {”ADD ~2 ~4 ~1”}会得到{1,3,4,5,5}\red {\{1, 3, 4, 5, 5\}}

2、REVERSE x y\red {REVERSE~ x~ y}:将子序列{Ax ,,Ay }\red {\{A_x~ ,…,A_y~\}}逆序排布。例如,在{1,2,3,4,5}\red {\{1, 2, 3, 4, 5\}}上进行操作REVERSE 2 4\red {”REVERSE ~2~ 4”}会得到{1,4,3,2,5}\red {\{1, 4, 3, 2, 5\}}

3、REVOLVE x y T\red {REVOLVE~ x ~y ~T}:将子序列{Ax ,,Ay }\red {\{A _x~ ,…,A_y~\}}轮换T\red {T}次。例如,在{1,2,3,4,5}\red {\{1, 2, 3, 4, 5\}}上进行操作REVOLVE 2 4 2\red {”REVOLVE ~2~ 4 ~2”}会得到{1,3,4,2,5}\red {\{1, 3, 4, 2, 5\}}

4、INSERT x P\red {INSERT~ x~ P}:在Ax \red {A_x~}后面插入P\red {P}。例如,在{1,2,3,4,5}\red {\{1, 2, 3, 4, 5\}}上进行操作INSERT 2 4\red {”INSERT ~2~ 4”}会得到{1,2,4,3,4,5}\red {\{1, 2, 4, 3, 4, 5\}}

5、DELETE x\red {DELETE ~x}:删除Ax \red {A_x~}。例如,在{1,2,3,4,5}\red {\{1, 2, 3, 4, 5\}}上进行操作DELETE 2\red {”DELETE ~2”}会得到{1,3,4,5}\red {\{1, 3, 4, 5\}}

6、MIN x y\red {MIN~ x ~y}:询问子序列{Ax ,,Ay }\red {\{A _x~ ,…,A_y~\}}中的最小值。例如,{1,2,3,4,5}\red {\{1, 2, 3, 4, 5\}}上执行MIN 2 4\red {”MIN~ 2 ~4”}的正确答案为2\red {2}

为了使得节目更加好看,每个参赛人都有机会在觉得困难时打电话请求场外观众的帮助。

你的任务是看这个电视节目,然后写一个程序对于每一个询问计算出结果,这样可以使得达达在任何时候打电话求助你的时候,你都可以给出正确答案。

输入格式

第一行包含一个整数 n\red {n}

接下来 n\red {n} 行给出了序列中的数。

接下来一行包含一个整数M\red { M},描述操作和询问的数量。

接下来 M\red {M} 行给出了所有的操作和询问。

输出格式

对于每一个MIN\red {”MIN”}询问,输出正确答案。

每个答案占一行。

样例

输入样例

5
1 
2 
3 
4 
5
2
ADD 2 4 1
MIN 4 5

输出样例

5

提示

n100000,M100000\red {n≤100000,M≤100000}