小霾作为ACM工作室现役最强日语大师,有一套学习日语的绝活:记单词!
每当小霾打开一本有n个单词的日语书,他都会从头开始记单词,由于小霾虽然很强但并不是天才,他同一时间最多记住k个单词,每当看到小霾在记满k个单词的情况下遇到没记住的单词,小霾就会忘掉最先记住单词,来记新单词。由于这些日语书是园哥给的,上面可能包含了很多相同单词,每个单词都有一个编号。
请你告诉小霾他最后记住了几个单词,并把这些单词的编号输出。
Input
输入的第一行包含两个整数n和k(1≤n,k≤2e5)-日语书上的单词数和小霾同一时间最多记的单词种类数。
输入的第二行包含n个整数id1,id2,…,idn(1≤idi≤1e9),其中idi是日语书第i个单词的编号。
Output
在输出的第一行中,输出一个整数m(1≤m≤min(n,k))-表示最后小霾记住的单词数
在第二行中,输出m个整数ids1,ids2,…,idsm,其中idsi是小霾按照从后到先顺序记住的单词数。
Examples
Input
7 2 1 2 3 2 1 3 2
Output
2 2 1
Input
10 4 2 3 3 1 1 2 1 2 3 3
Output
3 1 3 2
Note
在第一个样例中,小霾记住的单词编号如下(从先记到后记的顺序):
[];
[1];
[2,1];
[3,2];
[3,2];
[1,3];
[1,3];
[2,1]。
在第二个示例中:
[];
[2];
[3,2];
[3,2];
[1,3,2];
然后到最后也不会改变。
模拟就好了
#include
#include
#include
#include
#include
#include
#include
#include