题目链接:P1540 [NOIP2010 提高组] 机器翻译 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn)
题目大意:
存新词查询词更新词
思路:
队列,很不理解,看不懂,还是比较能理解手写队列
代码:
#include<stdio.h>
#include<algorithm>
#include<iostream>
#include<queue>//队列头文件
using namespace std;
queue<int>q;//定义队列
bool v[1005];
int sum=0;//存入和内存比较,记录查询次数
int main()
{
int m,n;cin>>m>>n;//内存大小和文章长度
for(int i=1;i<=n;i++)
{
int x;cin>>x;
if(v[x])continue;
else{
if(q.size()>=m)
{
v[q.front()]=0;//不理解为什么有这一步
q.pop();
}
q.push(x);
sum++;
v[x]=1;//
}
}
cout<<sum<<endl;
return 0;
}
总结:
很烦,栈和队列都没学会,烦烦烦,还想睡觉