目录

题目

题解


题目

  • 1000ms
  • 524288K

蜗牛在制定今天的旅游计划,有 nn 个景点可选,它已经把这些景点按照顺路游览的顺序排成一排了,每个地方有相应的景观,这里用一个整数表示。

蜗牛希望选取连续的一段景点,还要选出来的每一个景点的景观都不同,问它最多能选出多少个景点进行旅游。

输入格式

第一行,一个正整数 n(1≤n≤10^5)。

第二行,包含 n 个正整数 ai​(1≤ai​≤10^6) ,第 i 个整数表示第 i 个景点的景观。

输出格式

输出一行,包含一个整数,表示蜗牛最多能选出的景点数。

数据范围

对于 60% 的数据,1≤n≤10^3

对于 100% 的数据,1≤n≤10^5,1≤ai​≤10^6

输出时每行末尾的多余空格,不影响答案正确性

要求使用「文件输入输出」的方式解题,输入文件为 tour.in,输出文件为 tour.out

样例输入

5
1 2 3 2 1

样例输出

3

题解:

知识点:队列

分析: 模拟一遍即可,注意细节

代码:

#include<iostream>
#include<cstdio>
#include<queue>
#include<map>
using namespace std;
const int N=1e6+5;
queue<int> q;
map<int,int> a;//用map节省空间
bool vis[N];
int main(){freopen("tour.in","r",stdin);freopen("tour.out","w",stdout);int n,ans=0;scanf("%d",&n);for (int i=0;i<n;i++){int a1;scanf("%d",&a1);a[i]=a1;}for (int i=0;i<n;i++){if (!vis[a[i]]){q.push(a[i]);vis[a[i]]=true;}else{while (!q.empty()){if (q.front()!=a[i]){vis[q.front()]=false;q.pop();}else{q.pop();vis[q.front()]=false;q.push(a[i]);break;}}}if (q.size()>ans){//注意,不能用maxans=q.size();}}cout<<ans<<endl;return 0;
}

C++题解:蜗牛旅行相关推荐

  1. [某人的题解]徒步旅行(travel)

    题目描述 小 A 决定开始一场奇妙的徒步旅行,旅行地图可以看成是一个平面直角坐标系,小 A 从家O(0,0)O(0, 0)O(0,0)出发,每一步移动只能由他此时所在的位置(x,y)(x,y)(x,y ...

  2. 【GDOI2014模拟】旅行 题解代码

    原题 Description 从前有一位旅者,他想要游遍天下所有的景点.这一天他来到了一个神奇的王国:在这片土地上,有n个城市,从1到n进行编号.王国中有m条道路,第i条道路连接着两个城市ai,bi, ...

  3. 洛谷 P1137 旅行计划 题解

    洛谷 P1137 旅行计划 题解 洛谷 P1137 题目 小明要去一个国家旅游.这个国家有 N N N个城市,编号为1至 N N N,并且有 M M M条道路连接着,小明准备从其中一个城市出发,并只往 ...

  4. 【题解】【AcWing】1507. 旅行计划

    1507. 旅行计划 原题传送:AcWing 1507. 旅行计划 给定一张地图,包含 N N N 个城市, M M M 条高速公路. 城市之间都能相互连通. 每条高速公路的长度和走该条公路的花费都是 ...

  5. 【luogu P5022 旅行】 题解

    题目连接:https://www.luogu.org/problemnew/show/P5022 \(NOIP2018 DAY2T1\) 考场上只写了60分,很容易想到当 m = n - 1 时的树的 ...

  6. 【NOIP2018】旅行 (洛谷P5049 / P5022) O(nlogn)题解

    阅读和学习本篇题解前,你应该掌握: C++ STL stack.vector.queue.pair的基本用法: 递归.搜索和贪心思想. 洛谷传送门 P5049 此题可以先从数据范围入手,观察m的范围( ...

  7. 题解 P5022 【旅行】

    小 Y 是一个爱好旅行的 OIer.她来到 X 国,打算将各个城市都玩一遍. 小Y了解到, X国的 nnn 个城市之间有 mmm 条双向道路.每条双向道路连接两个城市. 不存在两条连接同一对城市的道路 ...

  8. 题解 P1081 【开车旅行】

    小 A \text{A} A 和小 B \text{B} B 决定利用假期外出旅行,他们将想去的城市从 $1 $ 到 n n n 编号,且编号较小的城市在编号较大的城市的西边,已知各个城市的海拔高度互 ...

  9. 题解报告:hdu 2066 一个人的旅行

    Problem Description 虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,^0^),很多事,还能丰 ...

最新文章

  1. 信息安全标准化国际组织
  2. java 序列化 写入mysql_java 序列化到mysql数据库中
  3. UPESB天气查询用例(三)
  4. CSRF——攻击与防御
  5. 【数据库系统工程师】数据库系统工程师考情分析
  6. 新出行超级产业链之交通工具变革(网址导航)
  7. 如何将png转换成jpg呢?
  8. 线性代数学习笔记——第六讲——矩阵的转置
  9. 什么是人机交互技术?
  10. MindSpore21天实战营(3):基于ResNet50实现毒蘑菇识别实战
  11. 【百科】中华医书集成
  12. 大数据初创企业Concurrent获千万美元融资
  13. 资源收集贴(持续更新...)
  14. jnz和djnz_51单片机之系统指令
  15. mysql本周 下周下月_mysql取今日,明天,工作日,周末,本周,下周,下月数据...
  16. 云计算学习好学吗?云计算这个行业前景如何?
  17. 省市区三级联动数据表
  18. 探究CRC32算法实现原理
  19. matlab无源滤波器,matlab在一阶无源带阻滤波器的应用
  20. 微软发布Windows Phone 8.1 Update 和中文版Cortana“小娜”

热门文章

  1. python写的飞船游戏卡顿_关于pygame里让飞船连续移动的问题?
  2. 敷完面膜后要擦水乳吗_敷完面膜还要擦水乳吗?
  3. 一个初级前端结合css、div谈一谈屏幕尺寸、分辨率、缩放概念题
  4. EfficientNet(ICML 2019)原理与代码解析
  5. 不动点迭代法(C语言)
  6. Solidity – 代码注释
  7. 固定资产管理系统提升企业固定资产管理效率
  8. 不用手机,如何让猫给你打视频电话 | 日常小技
  9. 蓝色的建站网站页脚布局代码
  10. ubuntu kernel编译