#include <bits/stdc++.h>
#define pb push_back
using namespace std;
int ucitaj()
{
	bool minus=false;
	int rez=0;
	char ch;
	ch=getchar();
	while (true)
	{
		if (ch=='-')break;
		if (ch>='0' or ch<='9')break;
		ch=getchar();
	}
	if (ch=='-')minus=true;else rez=ch-'0';
	while(true)
	{
		ch=getchar();
		if (ch<'0' or ch>'9') break;
		rez=rez*10+(ch-'0');
	}
	if (minus)
	return -rez;
	else
	return rez;
}
int main()
{
	int n,k,i,pom,j,u,v,m;
	vector <int> A;
	vector <int> B;
	vector <int> C;
	n=ucitaj();
	k=ucitaj();
	//j=0;
	u=ucitaj();
	A.pb(u);
	B.pb(0);
	B[0]++;
	v=1;
	for (i=1;i<n;i++)
	{
		u=ucitaj();
		for (j=0;j<v;j++)
		{
			if (A[j]==u)
			{
				B[j]++;
				goto sledi;
			}
		}
		A.pb(u);
		B.pb(0);
		B[v]++;
		v++;
		sledi: m=1;
	}
	pom=0;
	for (i=0;i<v;i++)
	{
		if (B[i]>=k)
		{
			pom++;
			C.pb(A[i]);
		}
	}
	printf("%d\n",pom);
	if (pom!=0)
	{
		for (i=0;i<pom;i++)
		{
			printf("%d ",C[i]);
		}
	}
}