#include <bits/stdc++.h>


using namespace std;
typedef long long ll;
int podeli(ll a[],int l,int d){
    int pivot=l,k=l,i;
    for(i=l+1;i<=d;i++)
        if(a[i]<=a[pivot]){
                k++;
        swap(a[i],a[k]);
    }
    swap(a[k],a[pivot]);
    return k;
}
void quick(ll a[],int l,int d){
    if(l<d){
        int poz=podeli(a,l,d);
        quick(a,poz+1,d);
        quick(a,l,poz-1);
    }

}
void quickSort(ll a[],int n){
    quick(a,0,n-1);
}

int main()
{
    ios::sync_with_stdio(false);
    ll n,k;
    cin >> n;
    cin >> k;
    ll a[n];
    for(int i=0;i<n;i++)
        cin >> a[i];
    quick(a,0,n-1);
    bool pom [n]={false};
    int brojac=0,uk=0;
    for(int i=0;i<n;i++){
        if(a[i]==a[i+1])
            brojac++;
        else
        {
            if(brojac>=k-1){
                pom[i]=true;
                brojac=0;
                uk++;
            }
        }

    }
    cout << uk << '\n';
    for(int i=0;i<n;i++)
        if(pom[i])
        cout << a[i] << " ";
    cout << '\n';
    return 0;
}