#include <bits/stdc++.h>
using namespace std;
int n, k, id;
set<int> st;
vector<int> res;
queue<int> ntf;
signed main() {
  ios::sync_with_stdio(0), cin.tie(0), cout.tie(0);
  cin >> n >> k;
  while (n--) {
    cin >> id;
    if (st.count(id)) continue;
    st.insert(id);
    if (ntf.size() < k)
      ntf.push(id);
    else {
      ntf.push(id);
      st.erase(ntf.front());
      ntf.pop();
    }
  }
  for (; ntf.size(); ntf.pop()) res.push_back(ntf.front());
  cout << res.size() << '\n';
  for (; res.size(); res.pop_back()) cout << res.back() << ' ';
}
