#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")