5 条题解

  • 2
    @ 2025-10-31 19:34:13

    方法1

    #iclude<bits/stdc++.h>
    using namespace std;
    deque<int> a;
    int n,m,x,cnt,f; 
    int main(){
    	cin >> m >> n;
    	for(int i=1; i<=n; i++){
    		cin >> x;
    		f=0;
    		for(auto it:a){
    			if(it==x){
    				f=1;
    			}guage
    		if(!f){
    			cnt++;
    			if(a.size()<m){
    				a.push_back(x);
    			}
    			else{
    				a.push_back(x);
    				a.pop_front();
    			}
    		}
    	}
    	cout << cnt;
    	return 0;
    
    
    }
    

    方法2

    #include<bits/stdc++.h>
    using namespace std;
    int n,m,a[1005],b[1005],len,x,ans;
    int main (){
    	 cin >> m >> n;
    	 while(n--){
    	 	cin >> x;
    	 	if(a[x]==0){
    	 		ans++;
    	 		a[x]=1;
    	 		if(len<m){
    	 			b[++len]=x;
    			 }
    			 else{
    			 	a[b[1]]=0;
    			 	for(int i=2;i<=m;i++{
    			 		b[i-1]=b[i];
    				 }
    				 b[m]=x;
    			 }
    		 }
    	 }
    	 cout << ans;
    	 return 0;
    }
    

    信息

    ID
    712
    时间
    1000ms
    内存
    128MiB
    难度
    5
    标签
    递交数
    250
    已通过
    95
    上传者