#include <iostream>
#include <queue>
#include <unordered_set>
#include <algorithm>
using namespace std;
int main()
{
int m = 0;//缓存容量
int n = 0;//文章单词数
int count = 0;//记录出现多少次miss的情况
int num = 0;//输入的单词
unordered_set<int> cache;//哈希集合
queue<int> q;
cin >> m >> n;
for(int i = 0; i < n; i++)
{
cin >> num;
if(cache.find(num) == cache.end())//未找到元素,即元素不在队列中
{
if(q.size() >= m)//队列中的单词数量大于等于缓存容量时
{
int oldest = q.front();
q.pop();
cache.erase(oldest);//移除最旧的单词
}
q.push(num);
cache.insert(num);//加入缓存
count++;
}
}
cout << count << endl;
return 0;
}
// 64 位输出请用 printf("%lld")