#P20005. 冒泡修炼 · 天劫轮数

冒泡修炼 · 天劫轮数

背景

徐阳困在炼气期(境界 = 1)已有十万年。虽然境界最低,但他的根基稳如磐石,无人能够撼动。

宗门排位战中,弟子们按照冒泡排序的规则调整位置——境界大的向右走,境界小的向左走,一轮一轮"冒泡"直到队伍稳定。然而,任何试图与徐阳换位的弟子,都会被他的十万年修为弹回去。

问题描述

N 名弟子站成一排,第 i 位弟子的境界为 a[i](正整数,越大越强)。队伍中恰好有一位境界为 1 的弟子(徐阳)

排序规则(冒泡排序的变体):

  1. 从左到右,依次比较相邻两人
  2. 左边境界 > 右边境界,则交换两人
  3. 例外:若右边是徐阳(a[i+1] = 1),交换失败,两人原地不动
  4. 一轮结束后,若本轮无任何交换,则队伍稳定,停止

求:至少需要多少轮,才能确定队伍已经稳定?

输入格式

第一行:一个整数 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% 的数据:1N2×105,1ai1091 ≤ N ≤ 2×10⁵ ,1 ≤ aᵢ ≤ 10⁹