#include <iostream> #include <queue> #include <unordered_set> using namespace std; int main() { int n, size, code; cin >> n >> size; queue<int> cacheQueue; unordered_set<int> cacheSet; int misses = 0; while (size--) { cin >> code; if (cacheSet.find(code) == cacheSet.end()) { misses++; if (cacheQueue.size() >= n) { cacheSet.erase(cacheQueue.front()); cacheQueue.pop(); } cacheQueue.push(code); cacheSet.insert(code); } } cout << misses << endl; return 0; }