一个长度为n的排列,单次操作选择一个数移动到序列的任意一个位置(开头、结尾、任意两个相邻的数之间),只有权值在[L,R]内的元素允许不被操作,其他元素必须被操作至少一次。问把排列变为递增序列的最小操作次数。
长度为n的排列是指由[1,n]的整数组成的序列,其中每个元素恰好出现一次,并且顺序不同。换句话说,长度为n的排列是对n个元素进行任意排列得到的结果。
例如,当n=3时,长度为3的排列可以是(1,2,3),(1,3,2),(2,1,3),(2,3,1),(3,1,2),(3,2,1)。但不能是(2,2,1),因为2出现了2次。
输入格式
第一行输入三个正整数 n,L,R。
第二行输入长度为 n 的排列。
输出格式
输出一个数,表示最小操作次数。
5 2 3
5 1 2 3 4
3
5 2 3
5 1 3 2 4
4
数据范围和约定
-
对于测试点1:1≤n≤10,1≤L≤R≤n。
-
对于测试点2∼5:1≤n≤100000,1≤L≤R≤n,R−L≤1。
-
对于测试点6∼10:1≤n≤100000。