#include<stdio.h.>#include<string.h>#include<map>#define N 200000
using namespace std;int a[N+5];intmain(){int n,k,x,ans,q,l,r;while(~scanf("%d%d",&n,&k)){
map<int,bool> m;
l=0,r=0,q=n;memset(a,0,sizeof(a));while(q--){scanf("%d",&x);if(!m[x]){
m[x]=true;
a[++r]=x;if(r-l>k)
m[a[++l]]=false;}}printf("%d\n",r-l);while(r>l)printf("%d ",a[r--]);printf("\n");}return0;}