CF319B Psychos in a Line

题目描述

有 $n$ 个精神病患者站成一排。每个患者被分配一个唯一的编号,编号从 $1$ 到 $n$。每一步,每一个编号大于其右侧患者的患者(如果存在)会杀死其右侧的患者。注意,一个患者可能在同一步既杀死别人又被别人杀死。 给定这些患者排成一行的初始排列,计算经过多少步之后,不会再有患者杀死其邻居。具体可参考样例说明。

输入格式

第一行输入一个整数 $n$,表示患者的数量,满足 $1 \leq n \leq 10^5$。 第二行输入 $n$ 个以空格分隔的不同整数,每个整数范围在 $1$ 到 $n$,表示这些患者从左到右排列的编号。

输出格式

输出一个整数,表示经过多少步后,队列保持不变。

说明/提示

在第一个样例中,患者的排列变化如下: $[10\ 9\ 7\ 8\ 6\ 5\ 3\ 4\ 2\ 1] \to [10\ 8\ 4] \to [10]$。 因此,总共需要两步。