#include <bits/stdc++.h>
const int MaxN = 4e5 + 10;
using namespace std;
int n, k, a[MaxN], vt1[MaxN], vt2[MaxN], ans;
set<int> s;
int main() {
  ios_base::sync_with_stdio(0);
  cin.tie(0), cout.tie(0);
  cin >> n >> k;
  for (int i = 0; i < n; i++) cin >> a[i];
  memset(vt2, 1e9 + 7, sizeof(vt2));
  for (int i = n - 1; i >= 0; i--) {
    vt1[i] = vt2[a[i]];
    vt2[a[i]] = i;
  }
  for (int i = 0; i < n; i++) {
    if (s.find(i) != s.end()) {
      s.erase(i);
      s.insert(vt1[i]);
    } else if (s.size() >= k) {
      s.erase(*s.rbegin());
      s.insert(vt1[i]);
      ans++;
    } else if (s.size() < k) {
      s.insert(vt1[i]);
      ans++;
    }
  }
  cout << ans;
  return 0;
}
