#ZF1084. 区间反转
区间反转
Description
jbgg 有一个长为 的排列,jbgg 每次只能在排列中选择任意一段连续区间进行反转。比如:,选择区间 进行反转后,。
jbgg 想用不超过 次操作使得该排列递增,请你帮助他。只要在你的输出结束后能使排列递增即可通过。
排列:一个长为 的排列是一个有 个数字的集合,数字 到 在集合中都出现且仅出现一次。比如: 是一个排列,但 不是一个排列。
Format
Input
第一行一个正整数 ,表示排列长度。
第二行 个正整数 ,表示给定的排列。
Output
第一行一个正整数 ,表示你的操作次数。
接下来 行,每行两个正整数 ,表示本次操作中要反转的区间,数与数之间用空格隔开。
本题有 SPJ,任意的合法解都可通过。
Samples
5
1 4 2 3 5
2
2 3
3 4
4
1 2 3 4
0
6
6 3 2 5 4 1
4
1 6
2 5
2 3
4 5
Notes
第一个样例中:
- 选择区间 反转,结果为 ;
- 选择区间 反转,结果为 。
第二个样例中,排列本身已经有序,无需操作。
Limitation
1s, 256MB for each test case.