P1540 机器翻译-洛谷

解题思路:模拟
代码

#include<iostream>
#include<cstdio>
#include<vector>
using namespace std;
vector<int>q;
bool is_diff(int ch1){
	for(int i=0;i<q.size();i++){
        if(q[i]==ch1){
            return false;
        }
	}
	return true;
}
int sz,N,ch,num=0;
int main(){
	scanf("%d%d",&sz,&N);
	for(int i=0;i<N;i++){
		scanf("%d",&ch);
		if(q.size()<sz){
		  if(is_diff(ch)){
             q.push_back(ch);
             num++;
		  }
		}
		else{
           if(is_diff(ch)){
            q.erase(q.begin());
            q.push_back(ch);
            num++;
           }
		}
	}
	printf("%d\n",num);
	return 0;
}

猜你喜欢

转载自blog.csdn.net/lianghudream/article/details/84064470