AT_agc014_f.[AGC014F] Strange Sorting
NOI/NOI+/CTSC
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
高桥君非常喜欢排序。
因此,他准备了一个从 1 到 N 的排列 (p1,p2,…,pN),并且他打算反复进行以下操作,直到该排列变成 (1,2,…,N) 为止:
- 首先,对于排列中的每一项 i,如果从第 1 项到第 i 项的最大值等于第 i 项本身,则称这一项为「高项」,否则称为「低项」。
- 然后,按照当前排列的顺序,将高项中的数记为 a1,a2,…,ak,低项中的数记为 b1,b2,…,bN−k。
- 最后,将排列重新排列为 (b1,b2,…,bN−k,a1,a2,…,ak)。
请你求出高桥君完成排序所需的操作次数。
输入格式
输入包含一行:
N p1 p2 ... pN
输出格式
输出高桥君完成排序所需的操作次数。
输入输出样例
输入#1
5 3 5 1 2 4
输出#1
3
输入#2
5 5 4 3 2 1
输出#2
4
输入#3
10 2 10 5 7 3 6 4 9 8 1
输出#3
6
说明/提示
限制条件
- 1≤N≤2×105
- (p1,p2,…,pN) 是 1 到 N 的一个排列。
样例说明 1
高桥君最开始有排列 (3,5,1,2,4),每次操作后,排列如下所示:
- 第 1,2 项是高项,第 3,4,5 项是低项,所以下一个排列是 (1,2,4,3,5)。
- 第 1,2,3,5 项是高项,第 4 项是低项,所以下一个排列是 (3,1,2,4,5)。
- 第 1,4,5 项是高项,第 2,3 项是低项,所以下一个排列是 (1,2,3,4,5)。
由 ChatGPT 5 翻译
输入解题思路,AI测评打分。不知道怎么写?