检测到 KaTeX 加载失败,可能会导致文中的数学公式无法正常渲染。
#题面
#题目描述
SORT 公司是一个专门为人们提供排序服务的公司,该公司的宗旨是:“顺序是最美丽的”。他们的工作是通过一系列移动,将某些物品按顺序摆好。他们的工作规定只能使用如下方法排序:
先找到编号最小的物品的位置 ,将区间 反转,再找到编号第二小的物品的位置 ,将区间 反转……
上图是有 个物品的例子,编号最小的一个是在第 个位置。因此,最开始把前面 个物品反转,第二小的物品在最后一个位置,所以下一个操作是把 的物品反转,第三步操作是把 的物品进行反转……
在数据中可能存在有相同的编号,如果有多个相同的编号,则按输入的原始次序操作。
#输入格式
输入共两行,第一行为一个整数 , 表示物品的个数()。
第二行为 个用空格隔开的正整数,表示 个物品最初排列的编号。
#输出格式
输出共一行, 个用空格隔开的正整数 (), 表示第 次操作前第 小的物品所在的位置。
注意:如果第 次操作前,第 小的物品己经在正确的位置 上,我们将区间 反转(单个物品)。
#输入输出样例
样例输入 #1
6
3 4 5 1 6 2
样例输出 #1
4 6 4 5 6 6
#思路
前置知识:文艺平衡树。
考虑按照排名处理,每次找到最小值的排名 ,然后翻转区间 ,再删去这个最小值。对于每次操作 即为答案。
#代码
1 |
|