Robotic Sort
题意翻译
## 题目描述
通过一系列移动,将某些物品按顺序摆好。规定只能使用如下方式排序:
先找到编号最小的物品的位置P1,将区间[1,P1]反转,再找到编号第二小的物品的位置P2,将区间[2,P2]反转……
(如图)
上图是有6个物品的例子,编号最小的一个是在第4个位置。因此,最开始把前面4个物品反转,第二小的物品在最后一个位置,所以下一个操作是把2-6的物品反转,第三部操作则是把3-4的物品进行反转……
在数据中可能存在有相同的编号,如果有多个相同的编号,则按输入的原始次序操作。
## 输入格式
多组数据以0结尾,每组输入共两行,第一行为一个整数N,N表示物品的个数,1<=N<=100000
第二行为N个用空格隔开的正整数,表示N个物品最初排列的编号。
## 输出格式
每组数据输出一行,N个用空格隔开的正整数P1,P2,P3…Pn,Pi表示第i次操作前第i小的物品所在的位置。 注意:如果第i次操作前,第i小的物品己经在正确的位置Pi上,我们将区间[Pi,Pi]反转(单个物品)。
感谢@enor2017 提供翻译
题目描述
[problemUrl]: https://uva.onlinejudge.org/index.php?option=com_onlinejudge&Itemid=8&category=447&page=show_problem&problem=4148
[PDF](https://uva.onlinejudge.org/external/14/p1402.pdf)