『STA - R8』轮回疯狂
题目描述
给一个 $1$ 到 $n$ 的排列 $p$,你可以使用两种操作:
- 轮回:交换 $p$ 中相邻的两个位置。
- 疯狂:删除 $p$ 中的最小值。如果 $p$ 为空则不能进行操作。
问最少需要多少次操作才能使得序列单调递增。
输入输出格式
输入格式
第一行一个正整数 $n$。
第二行 $n$ 个正整数,描述排列 $p$。
输出格式
一行一个正整数,表示答案。
输入输出样例
输入样例 #1
3
3 2 1
输出样例 #1
2
说明
样例解释:先删除 $p_3$,再交换 $p_1,p_2$。
***
**本题采用捆绑测试。**
数据范围:
- Subtask 1 (10pts):$n\le 3$。
- Subtask 2 (30pts):$n\le 10^3$。
- Subtask 3 (10pts):$p_i=n-i+1$。
- Subtask 4 (50pts):无特殊限制。
对于全部数据,$1\le n\le 10^5$,$p$ 是 $1$ 到 $n$ 的排列。