20分求助
查看原帖
20分求助
1170968
WEICY123楼主2025/7/25 15:38
#include<bits/stdc++.h>
using namespace std;
int m,n,a[100001],ans=0,b[100001];
queue<int>q;
int main(){
    cin>>m>>n;
    for(int i=1;i<=n;i++){
        cin>>a[i];
    }
    for(int i=1;i<=n;i++){
        if(q.size()<m&&b[a[i]]==0){
        	b[a[i]]=1;
            q.push(a[i]);
            ans++;
        }
        while(q.size()==m){
        	b[a[q.front()]]=0;
            q.pop();
        }
    }
    cout<<ans;

2025/7/25 15:38
加载中...