#include <iostream>
using namespace std;
int main()
{
    long long n;
    long long k;
    
    cin >> n >> k;
    long long prvi[n];
    long long drugi[n+1];
    drugi[n+1]=1312131213121312;
    for(int i=0;i<n;i++)
    {
        cin >> prvi[i];
        drugi[i]=prvi[i];
    } 
    long long sortt=0;
    for(int i=0;i<n-1;i++)
    {
        sortt=i;
        for(int j=i+1;j<n;j++)
        {
            if(drugi[sortt]>drugi[j])
            {
                sortt=j;
            }
        }
        swap(drugi[sortt],drugi[i]);
    }
    //############ 
    
    long long br=0,s=1;
    for(int i=1;i<n;i++)
    {
      if(drugi[i]==drugi[i-1])
      {
        s=s+1;
      }
      if(drugi[i]!=drugi[i+1] and s>=k)
      {
        
        s=1;
        br=br+1;
      }
      else if(drugi[i]!=drugi[i+1] and s<k)
      {
        s=1;
      }
    }
    if(n>=k and n==1)
    {
        cout<<1<<endl<<drugi[0];
    }
    else
    {
      cout<<br<<endl;
    }
    s=1;
    for(int i=1;i<n;i++)
    {
      if(drugi[i]==drugi[i-1])
      {
        s=s+1;
      }
      if(drugi[i]!=drugi[i+1] and s>=k)
      {
        cout<<drugi[i]<<" ";
        s=1;
        br=br+1;
      }
      else if(drugi[i]!=drugi[i+1] and s<k)
      {
        s=1;
      }
    }
    return 0;  
}