#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;
}

京公网安备 11010502036488号