#H1001. sort
sort
一个长度为 的排列,单次操作选择一个数移动到序列的任意一个位置(开头、结尾、任意两个相邻的数之间,原地不动也可以算一次移动),只有权值在内的元素允许不被操作,其他元素必须被操作至少一次。问把排列变为递增序列的最小操作次数。
长度为 的排列是指由 的整数组成的序列,其中每个元素恰好出现一次,并且顺序不同。换句话说,长度为的排列是对个元素进行任意排列得到的结果。
例如,当时,长度为的排列可以是$(1, 2, 3),(1, 3, 2),(2, 1, 3),(2, 3, 1),(3, 1, 2),(3, 2, 1)$。但不能是,因为出现了次。
输入格式
第一行输入三个正整数 。
第二行输入长度为 的排列。
输出格式
输出一个数,表示最小操作次数。
样例 1
输入
5 2 3
5 1 2 3 4
输出
3
样例 2
输入
5 2 3
5 1 3 2 4
输出
4
样例 3
见下发文件 sort3.in/out.
数据范围
| 编号 | 额外限制 | 分值 |
|---|---|---|
| 1 | 10 | |
| 2 | 40 | |
| 3 | 50 |
相关
在下列比赛中: