构造数列
该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
题目描述
个不超过 的正整数从左向右排成一排,形成一个序列 :。
现在,要从左向右把这些元素依次取出来。每取出一个元素 ,你可以把它扔掉,也可以把它放到 序列的末尾,即最右端。
等到把原来的 个元素全部取出并处理完后,你将得到一个新的 序列。
你期望最终得到的 序列的字典序最大。
另外,你可以在开始取出 之前,任意选择原序列的某一个元素,将其移动到它左边的任意一个元素之前。
你也可以不这么操作。或者说,你最多只能做这样的操作一次。并且当你开始取数之后,你不能再做这样的操作。
请你输出最终能得到的字典序最大的 序列。
多组数据。
注:对于两个序列 和 ,序列 的字典序大于序列 ,当且仅当满足下列两个条件之一:
- (1)对于 的最小的 ,有 ;
- (2)当不存在 的 时,有 (其中 表示序列 的长度,即包含的元素个数)。
输入格式
第一行:一个整数 ,表示测试数据组数。
每组测试数据占两行:
- 第一行:一个整数
- 第二行: 个整数
输出格式
共 T 行,每组数据的答案占一行。
输入样例
3
3
3 2 1
4
1 2 3 4
5
5 1 3 1 4
输出样例
3 2 1
4 3
5 4 3 1
数据范围
10% 的数据:。
20% 的数据:。
70% 的数据:, 数据保证所有输入的 之和 ≤ 。
100% 的数据:, , ,
数据保证所有输入的 之和 ≤ 。