#H1001. sort

sort

一个长度为 nn 的排列,单次操作选择一个数移动到序列的任意一个位置(开头、结尾、任意两个相邻的数之间,原地不动也可以算一次移动),只有权值在[L,R][L,R]内的元素允许不被操作,其他元素必须被操作至少一次。问把排列变为递增序列的最小操作次数。

长度为 nn 的排列是指由 [1,n][1,n] 的整数组成的序列,其中每个元素恰好出现一次,并且顺序不同。换句话说,长度为nn的排列是对nn个元素进行任意排列得到的结果。

例如,当n=3n=3时,长度为33的排列可以是$(1, 2, 3),(1, 3, 2),(2, 1, 3),(2, 3, 1),(3, 1, 2),(3, 2, 1)$。但不能是(2,2,1)(2,2,1),因为22出现了22次。

输入格式

第一行输入三个正整数 n,L,Rn,L,R

第二行输入长度为 nn 的排列。

输出格式

输出一个数,表示最小操作次数。

样例 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 1n10,1LRn1\le n\le 10,1\le L\le R\le n 10
2 1n100000,1LRn,RL11\le n\le 100000,1\le L\le R\le n,R-L\le 1 40
3 1n1000001\le n\le 100000 50