#679. *L9子数列
*L9子数列
当前没有测试数据。
Description
字典序:对于整数数列A=[a1,a2,...,an]和整数数列 B=[b1,b2,...,bn];如果存在一个整数k( 1<=k<=n),满足a1=b1,a2=b2,...ak-1==bk-1,ak>bk,则认为数列A的字典序大于数列B的字典序。 例1: A=[4 ,2,1,5],B=[4,1,3,6];其中a1=b1,且a2>b2;则数列A 的字典序大于数列B的字典序。 例2:A=[5,14,13],B=[22,11,9],其中a1<b1,则数列A的字典序小于数列B的字典序。
子数列:通过从一个数列中删除一些元素(或不删除任何元素)而不改变剩余元素的相对顺序得到的数列。
例如: A=[1,2,3],则 [1],[2],[3],[1,2],[2,3],[1,3],[1,2,3]都是数列A的子数列。
给定一个长度为n的数列,其中包含了1到m之间(包含1和m)的所有整数,每个整数至少出现一次。 请从中找出一段长度为m的子数列,使得该子数列满足以下条件:
1、该子数列中1到m之间的每个数恰好都出现一次 2、该子数列的字典序最大 最后输出这个子数列
例如:n=4,m=3,该数列为[2,3,1,3]; 其中符合条件1的子数列有[2,3,1]、[2,1,3];字典序最大的是[2,3,1]。
Format
Input
第一行包含两个正整数n,m,中间以一个空格隔开; 第二行包含n个整数a1,a2,...,an,整数之间以一个空格隔开。
Output
一行包含m个整数,表示按照题目要求找出的子数列,整数之间以一个空格隔开。
Samples
4 3
2 3 1 3
2 3 1
Limitation
测试点1~10:2<=m<=n<=2*105,1<=ai<=m。
相关
在下列比赛中: