CF319B Psychos in a Line

题目描述

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

输入格式

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

输出格式

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

说明/提示

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