题目描述
每次操作选一个 ,把前 个元素整段反转。按固定贪心把数组变升序:每轮处理未排序后缀——找未排序部分的最大值(并列取最左);若它已在未排序末尾则本轮跳过;否则先以 其所在位置把它翻到最前,再以 未排序长度送到末尾。输出总操作次数与每步的 (已升序则次数为 、第二行为空行)。
输入格式
第一行一个整数 ;第二行 个整数。
输出格式
两行:操作次数;依次每步的 (空格分隔)。
样例
输入
3 2 3 1
输出
2 2 3
j00046.in输出j00046.out每次操作选一个 ,把前 个元素整段反转。按固定贪心把数组变升序:每轮处理未排序后缀——找未排序部分的最大值(并列取最左);若它已在未排序末尾则本轮跳过;否则先以 其所在位置把它翻到最前,再以 未排序长度送到末尾。输出总操作次数与每步的 (已升序则次数为 、第二行为空行)。
第一行一个整数 ;第二行 个整数。
两行:操作次数;依次每步的 (空格分隔)。
3 2 3 1
2 2 3