博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Luogu P1540 机器翻译
阅读量:4981 次
发布时间:2019-06-12

本文共 876 字,大约阅读时间需要 2 分钟。

思路

大水题,只需要静下心来模拟就行。我一开始做的时候,首先想到滚动数组但是写完之后发现并不符合题目要求。题目要求新加入的单词作为最新的,在时间上属于最后一个。但是如果用滚动数组的话,新加入的单词就成了第一个加入的单词。也就是说会WA。所以直接模拟是最好的办法。每次超出内存后,将每个元素的下标都往前推一格。空出最后一格给新加入的单词

 

代码

#include 
#include
#include
using namespace std;int n, m, data[108], temp, ans, now;bool vis[1008];int main() { scanf("%d%d", &m, &n); memset(data, -1, sizeof(data)); for(int i=1; i<=n; i++) { scanf("%d", &temp); if(!vis[temp]) { vis[temp] = 1; if(now == m) { if(data[1] != -1) vis[data[1]] = 0; for(int j=2; j<=m; j++) data[j-1] = data[j]; data[m] = temp; } else { data[++now] = temp; } ans ++; } } printf("%d", ans);}

 

转载于:https://www.cnblogs.com/bljfy/p/9316242.html

你可能感兴趣的文章
【转载】
查看>>
【转载】门面日志如何自动发现日志组件
查看>>
【转载】web.xml
查看>>
【转载】MDC 是什么?
查看>>
【原创】Ajax实现方式
查看>>
【转载】spring aop 面试考点
查看>>
【转载】在分布式项目中,每个服务器的日志从产生,到集中到一个统一日志平台的流程是什么,中间都有那些过程?...
查看>>
Spring AOP知识点整理
查看>>
文本相关杂七杂八
查看>>
Mac安装scala插件
查看>>
scala元组及拉链操作
查看>>
scala数组
查看>>
scala的基础数据类型&if条件表达式&for循环
查看>>
scala集合三大类(seq序列,set集,map映射)——list序列
查看>>
scala方法和涵数的声明以及方法转换成涵数
查看>>
scala集合三大类(seq序列,set集,map映射)——map映射
查看>>
scala的map映射
查看>>
scala集合三大类(seq序列,set集,map映射)——set集合
查看>>
scala的lazy关键字
查看>>
SPARK SQL ERROR: Detected cartesian product for INNER join between logical plans报错解决方法
查看>>