#include <bits/stdc++.h>
#define ll long long
using namespace std;
ll x[105],app[105],leave;
bool vis[105];
int main(){
ll k,n,ans=0;
cin >> k >> n;
leave=k;
for (ll i=0;i<n;i++){
cin >> x[i];
}
for (ll i=0;i<n;i++){
if (vis[x[i]]){ // 如果已经有了就直接榨汁
continue;
}else if (leave){ // 否则取一个空的
leave--;
vis[x[i]]=1;
}else{ // 否则取这个点之后最早出现时间最晚的一种果汁替换掉(必须要存在)
ll tgt=114514;
memset(app,0x3f,sizeof(app));
for (ll j=i+1;j<n;j++){
app[x[j]]=min(app[x[j]],j);
}
for (ll j=0;j<n;j++){
if (tgt==114514||(app[tgt]<app[x[j]]&&vis[x[j]])){
tgt=x[j];
}
}
if (tgt==114514){
for (ll j=0;j<n;j++)
if (vis[x[j]]){
tgt=x[j];
break;
}
}
// cout <<i<<" "<< tgt<< endl<< endl;
vis[tgt]=0;
ans++;
vis[x[i]]=1;
}
}
cout << ans << endl;
return 0;
}
没有发现错误,只有40分