CF319B.Psychos in a Line
普及+/提高
通过率:0%
时间限制:1.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
There are n psychos standing in a line. Each psycho is assigned a unique integer from 1 to n. At each step every psycho who has an id greater than the psycho to his right (if exists) kills his right neighbor in the line. Note that a psycho might kill and get killed at the same step.
You're given the initial arrangement of the psychos in the line. Calculate how many steps are needed to the moment of time such, that nobody kills his neighbor after that moment. Look notes to understand the statement more precise.
有 n 个“精神病患者”站成一排。每个患者被分配一个从 1 到 n 的唯一整数编号。在每一步中,每个编号大于其右侧邻居(如果存在)的患者,都会杀死其右侧的邻居。注意:一个患者可能在同一步中既杀人又被杀。
给定患者初始的排列顺序,请计算需要多少步,才能达到这样一个时刻——在此之后,不再有任何患者杀死其邻居。请参阅“注释”部分以更准确地理解题意。
输入格式
The first line of input contains integer n denoting the number of psychos, (1 ≤ n ≤ 105). In the second line there will be a list of n space separated distinct integers each in range 1 to n, inclusive — ids of the psychos in the line from left to right.
输入的第一行包含一个整数 n,表示精神病患者的数量(1≤n≤105)。第二行包含 n 个用空格分隔的互不相同的整数,每个整数均在 1 到 n 的范围内(含端点)—— 表示从左到右排列的精神病患者的编号。
输出格式
Print the number of steps, so that the line remains the same afterward.
输出使该直线保持不变所需的步数。
输入输出样例
输入#1
10 10 9 7 8 6 5 3 4 2 1
输出#1
2
输入#2
6 1 2 3 4 5 6
输出#2
0
说明/提示
In the first sample line of the psychos transforms as follows: [10 9 7 8 6 5 3 4 2 1] → [10 8 4] → [10]. So, there are two steps.
在第一个样例中,心理医生序列的变换过程如下:
[10\ 9\ 7\ 8\ 6\ 5\ 3\ 4\ 2\ 1] → [10\ 8\ 4] → [10]。
因此,共有两步。
输入解题思路,AI测评打分。不知道怎么写?