参考代码
#include<iostream>
#include<queue>
using namespace std;
int nums[1010];
int main(){queue<int> q;int M,N;cin>>M>>N;int res=0;while(N--){int tmp;cin>>tmp;if(nums[tmp]==1)continue;if(q.size()<M){q.push(tmp);res++;nums[tmp]=1;}if(q.size()==M&&nums[tmp]==0){nums[q.front()]=0;q.pop();q.push(tmp);nums[tmp]=1;res++;}}cout<<res<<endl;return 0;
}
题目链接
1540 机器翻译