题目链接:http://codeforces.com/contest/605/problem/A 大意是对一个排列进行排序,每一次操作可以将一个数字从原来位置抽出放到开头或结尾,问最少需要操作多少次可以将原排列变为有序. 一个比较很想当然的算法是用长度减去最长上升子序列,但这是错误的. 反例: 5 1 3 4 5 2 按照n-lis,会得出答案1,但显然这是做不到的,答案应是2 正解应当是考虑最终变为有序时,所有未经操作的数字,应当是连续的.所以要使得操作次数最少就要求在原来数列中位置递增的最长…