【4.8日题解】——[NOIP2010 提高组] 机器翻译

【4.8日题解】——[NOIP2010 提高组] 机器翻译,第1张

☘前言☘

今日份水题开始。


希望有想要提高的同学跟我们一起来刷题0.0
4.8日每日一题——[NOIP2010 提高组] 机器翻译

🧑🏻作者简介:一个从工业设计改行学嵌入式的年轻人
✨联系方式:2201891280(QQ)
⏳全文大约阅读时间: 20min


全文目录
  • ☘前言☘
  • 解题思路
  • 📑写在最后


P1540 [NOIP2010 提高组] 机器翻译

解题思路

本来以为是内存替换策略的LRU算法,好家伙,原来是FIFO算法,我理解错了,是我傻了。


直接一个循环队列就完事了呗?

#include 
#include 
unsigned char hash[1005];
short zhan[105];

int main(){
    int m, n, ans = 0, head = 0, tail = 0;
    memset(hash,0,sizeof(hash));
    scanf("%d %d",&m, &n);
    for(int i = 0;i < n;++i){
        int tmp;
        scanf("%d", &tmp);
        if(hash[tmp])   continue;
        hash[tmp] = 1;
        if(head == tail && i )    hash[zhan[tail]] = 0,tail = (tail + 1) % m;  //删除标记。


出队 zhan[head] = tmp, head = (head + 1) % m; //入队 ans++; } printf("%d",ans); return 0; }

挺好,不改了。



📑写在最后

今天就这样,明日再见0.0

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/568331.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-04-09
下一篇 2022-04-09

发表评论

登录后才能评论

评论列表(0条)

保存