版权声明
本题版权归 Long Long OJ 所有。
注意
本题的时间限制为 10 秒。
题目描述
给定一个包含 n 个元素的序列 a1,a2,…,an,进行 q 次操作:
- 数:形如 1 x y,代表依次输出 ax,ax+1,⋯,ay,保证 1≤y−x+1≤20。
- 聚:形如 2 x y,代表将 ax 移动到 ay 后。保证 1≤x<y≤n。
- 截:形如 3 x y,代表截取 ax,ax+1,⋯,ay 并翻转后放到序列的末尾。保证 1≤x<y≤n。
- 构:形如 4 x y,代表修改 ax←y。保证 1≤x≤n,−109≤y≤109。
输入格式
- 第一行:两个整数 n,q,代表序列长度和询问个数;
- 第二行:n 个整数 a1,a2,⋯,an;
- 第 3∼q+2 行:每行一个询问。
输出格式
对于每个「数」操作,输出一行 y−x+1 个整数,用空格隔开。
特别地,在操作完序列后,需要输出一行 n 个整数表示最终序列,具体格式为:
Final sequence: a[1] a[2] ... a[n]
样例
请在「下发文件」处获取样例。
下发文件
请在这里下载下发文件。
数据范围
具体每测试点信息见下表(本题不捆绑测试):
| 测试点编号 |
属于 Subtask |
0≤n,q≤ |
特殊性质 |
| 1 |
0 |
/ |
| 2 |
1 |
10 |
A |
| 3 |
2 |
500 |
| 4 |
| 5 |
| 6 |
3 |
5000 |
| 7 |
| 8 |
| 9 |
| 10 |
| 11 |
/ |
| 12 |
| 13 |
4 |
200000 |
A,B |
| 14 |
5 |
A,C |
| 15 |
| 16 |
6 |
A,D |
| 17 |
| 18 |
D |
| 19 |
| 20 |
| 21 |
7 |
A |
| 22 |
/ |
| 23 |
| 24 |
| 25 |
- 特殊性质 A:数据随机。
- 特殊性质 B:只有「数」操作和「构」操作。
- 特殊性质 C:只有「聚」操作。
- 特殊性质 D:只有「截」操作。
- 特殊性质 /:无。
对于 100% 的数据,1≤n,q≤2×105,−109≤ai≤109。