Problem AA: STL 函数使用 —— reverse()
[Creator : ]
Description
【介绍】
【头文件】
Standard Template Library: Algorithms#include<algorithm>
【作用】
Reverse range
Reverses the order of the elements in the range [first,last). template <class BidirectionalIterator> void reverse (BidirectionalIterator first, BidirectionalIterator last);
【任务】
我们通过本题,掌握 reverse() 函数使用方法。给一个长度为 $n$ 的数列,数列中可能有若干相同数据,从小到大输出不同数据。
Input
第一行给一个整数 $n\ (10^2 \leq n \leq 10^3),\ m\ (10^3 \leq m \leq 10^3)$。表示我们有一个长度为 $n$ 的数列,该数列的初始数据都为 $0$。我们有 $m$ 次操作。
第二行包括 $n$ 个整数 $a_i\ (-10^9 \leq a_i \leq 10^9)$。
接下来 $m$ 行,每行表示一种操作。
操作 1:
操作 2:
第二行包括 $n$ 个整数 $a_i\ (-10^9 \leq a_i \leq 10^9)$。
接下来 $m$ 行,每行表示一种操作。
操作 1:
1 first last表示我们将数列 [first, last] 的数据反转。
操作 2:
2 first last输出数列 [first, last] 当前数值。
Output
对于每个操作 2,输出数列当前数值。
Sample 1 Input
20 9
10 20 -5 30 40 50 60 70 80 90 100 3 9 -7 -10 -20 -30 -40 -50 -100
2 1 20
1 1 20
2 1 20
1 3 8
2 1 20
1 5 8
2 1 20
1 18 20
2 1 20
Sample 1 Output
10 20 -5 30 40 50 60 70 80 90 100 3 9 -7 -10 -20 -30 -40 -50 -100
-100 -50 -40 -30 -20 -10 -7 9 3 100 90 80 70 60 50 40 30 -5 20 10
-100 -50 9 -7 -10 -20 -30 -40 3 100 90 80 70 60 50 40 30 -5 20 10
-100 -50 9 -7 -40 -30 -20 -10 3 100 90 80 70 60 50 40 30 -5 20 10
-100 -50 9 -7 -40 -30 -20 -10 3 100 90 80 70 60 50 40 30 10 20 -5