#include<iostream>
using namespace std;
int f,r,f1,r1;
int m,n;
int main()
{
int const N=1000+100;
int p[N]; //文章的存储
int sum=0,t;
bool flag=0;
f=r=f1=r1=1; //队列的初始化
cin>>m>>n;
int d[m+1]={};
for(int i=1; i<=n; i++)
{
cin>>p[r];
t=f1;
while(f1!=r1)
{
if(d[f1]==p[r]) //判断单词是否在内存中
{
flag=1;
break;
}
f1=(f1+1)%m; //遍历队列
}
f1=t;
if(!flag) //判断内存里有没有文章里的元素
{
sum++;
if((r1+1)%m==f1) //如果队满,牺牲第一个元素
{
f1=(f1+1)%m;
d[r1]=p[r++];
r1=(r1+1)%m; //循环队列的归零操作
}
else
{
d[r1]=p[r++]; //如果队不满,加入内存
r1=(r1+1)%m;
}
}
flag=0;
}
cout<<sum;
return 0;
}