嘉豪上课用手机玩galgame,手机被老师没收了。无奈的嘉豪只能拿出学长留下的mp3播放音乐。
嘉豪有一个电音(全称为电子音乐,是一个音乐种类)歌单,里面的每一个首电音都有一个唯一的编号(1 \sim n)。第一首是Faded,第二首是Faded(Remix DJ版 0.8x)......歌单的序列躺在时间河床上,谱成了嘉豪青春的乐章。
但是很不巧,嘉豪使用mp3的时候不小心点到了随机播放,导致歌单里的音乐顺序被随机打乱了,但是每首电音的初始编号并没有变。因为mp3太过老旧,音乐播放器只提供了两种歌曲换位置的操作:每次操作只能让任意一首音乐重新排到歌单的第一位或最后一位。
因为玩 galgame 耗费了嘉豪很多精力,嘉豪想通过有限次的歌曲换位操作,让歌单重新变成 编号从 1 到 n 递增 的顺序。请输出嘉豪最少的操作次数。
输入
第一行输入一个整数 n \quad (3 ≤ n ≤ 10^4)。
第二行输入 n 个整数,表示打乱后,初始队列编号。
输出
一个整数,表示最小操作次数
样例
| 标准输入 复制文本 |
5 3 1 2 5 4 |
| 标准输出 复制文本 |
3 |
| 标准输入 复制文本 |
5 2 3 4 1 5 |
| 标准输出 复制文本 |
1 |
| 标准输入 复制文本 |
5 1 3 2 4 5 |
| 标准输出 复制文本 |
2 |
来源
2025年南昌师范学院第六届计算机程序设计竞赛