本题暴力做即可。
#include<cstdio>
using namespace std;
int m,n,a[1010],b[1010],ans=0,tot=0;
bool bz[1010];
inline int read()
{
int x=0; char c=getchar();
while (c<'0' || c>'9') c=getchar();
while (c>='0' && c<='9') x=(x<<1)+(x<<3)+(c^48),c=getchar();
return x;
}
int main()
{
// freopen("fanyi.in","r",stdin);
// freopen("fanyi.out","w",stdout);
m=read(),n=read();
for (int i=1;i<=n;i++)
{
a[i]=read();
if (!bz[a[i]])
{
ans++;
bz[b[++tot]=a[i]]=1;
if (tot>m) bz[b[tot-m]]=0;
}
}
printf("%d
",ans);
return 0;
}