#P20005. 冒泡修炼 · 天劫轮数
冒泡修炼 · 天劫轮数
背景
徐阳困在炼气期(境界 = 1)已有十万年。虽然境界最低,但他的根基稳如磐石,无人能够撼动。
宗门排位战中,弟子们按照冒泡排序的规则调整位置——境界大的向右走,境界小的向左走,一轮一轮"冒泡"直到队伍稳定。然而,任何试图与徐阳换位的弟子,都会被他的十万年修为弹回去。
问题描述
有 N 名弟子站成一排,第 i 位弟子的境界为 a[i](正整数,越大越强)。队伍中恰好有一位境界为 1 的弟子(徐阳)。
排序规则(冒泡排序的变体):
- 从左到右,依次比较相邻两人
- 若左边境界 > 右边境界,则交换两人
- 例外:若右边是徐阳(a[i+1] = 1),交换失败,两人原地不动
- 一轮结束后,若本轮无任何交换,则队伍稳定,停止
求:至少需要多少轮,才能确定队伍已经稳定?
输入格式
第一行:一个整数 N 第二行:N 个整数 a₁ a₂ ... aₙ
输出格式
一个整数:所需轮数
样例
样例 1
输入:
5
5 3 1 4 2
输出:
2
样例 2
输入:
6
8 1 4 2 7 3
输出:
3
样例 3
输入:
4
1 3 2 4
输出:
2
数据范围
对于 100% 的数据: