#P1173. 排序问题
排序问题
题目描述
现在给一个长度为n的序列。显然,所有不同的连续子序列共有个。将这些子序列进行从大到小进行排序。
下面定义子序列A和B的比较方法:
考虑所有在A和B中出现过的元素x,将他们从小到大排列。接着从小到大考虑元素x:若对于元素x,在A中出现的次数和B中出现的次数不同,定义其中出现次数较多的序列更大。
例如:
- 对于序列[1, 2, 3]和[1, 3, 1],有[1, 2, 3] < [1, 3, 1],因为后者中1出现了两次。
- 对于序列[1, 2, 3]和[1, 3],有[1, 2, 3] > [1, 3],因为前者中2出现了1次,后者0次。
我们将询问这些序列中排序完成后位于第k位的序列形态。换句话说查询从大到小第k大的序列形态。
输入格式
第一行两个整数,表示序列长度为,查询的是第大的序列。
接下来一行个整数,依次表示这个序列中的元素。
输出格式
一行,从前到后依次打印这个序列的形态。为了保证这个答案是唯一的,你需要将截取的序列排序后输出。
3 2
1 3 2
1 3
6 11
1 1 4 5 1 4
1 4 5
样例解释
样例解释 1
所有选出的序列从大到小排列后是 [1, 2, 3], [1, 3], [1], [2, 3], [2], [3]
所求的第二大序列为[1, 3]
数据规模与约定
每组数据点5分,共20组数据。
对于所有数据,满足
测试点编号 | 其他说明 |
---|---|
#1 ~ #8 | |
#9 ~ #12 | |
#13 ~ #14 | |
#15 ~ #16 | |
#17~#19 | |
#20 | 无 |