C++题解:蜗牛旅行
目录
题目
题解
题目
- 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++题解:蜗牛旅行相关推荐
- [某人的题解]徒步旅行(travel)
题目描述 小 A 决定开始一场奇妙的徒步旅行,旅行地图可以看成是一个平面直角坐标系,小 A 从家O(0,0)O(0, 0)O(0,0)出发,每一步移动只能由他此时所在的位置(x,y)(x,y)(x,y ...
- 【GDOI2014模拟】旅行 题解代码
原题 Description 从前有一位旅者,他想要游遍天下所有的景点.这一天他来到了一个神奇的王国:在这片土地上,有n个城市,从1到n进行编号.王国中有m条道路,第i条道路连接着两个城市ai,bi, ...
- 洛谷 P1137 旅行计划 题解
洛谷 P1137 旅行计划 题解 洛谷 P1137 题目 小明要去一个国家旅游.这个国家有 N N N个城市,编号为1至 N N N,并且有 M M M条道路连接着,小明准备从其中一个城市出发,并只往 ...
- 【题解】【AcWing】1507. 旅行计划
1507. 旅行计划 原题传送:AcWing 1507. 旅行计划 给定一张地图,包含 N N N 个城市, M M M 条高速公路. 城市之间都能相互连通. 每条高速公路的长度和走该条公路的花费都是 ...
- 【luogu P5022 旅行】 题解
题目连接:https://www.luogu.org/problemnew/show/P5022 \(NOIP2018 DAY2T1\) 考场上只写了60分,很容易想到当 m = n - 1 时的树的 ...
- 【NOIP2018】旅行 (洛谷P5049 / P5022) O(nlogn)题解
阅读和学习本篇题解前,你应该掌握: C++ STL stack.vector.queue.pair的基本用法: 递归.搜索和贪心思想. 洛谷传送门 P5049 此题可以先从数据范围入手,观察m的范围( ...
- 题解 P5022 【旅行】
小 Y 是一个爱好旅行的 OIer.她来到 X 国,打算将各个城市都玩一遍. 小Y了解到, X国的 nnn 个城市之间有 mmm 条双向道路.每条双向道路连接两个城市. 不存在两条连接同一对城市的道路 ...
- 题解 P1081 【开车旅行】
小 A \text{A} A 和小 B \text{B} B 决定利用假期外出旅行,他们将想去的城市从 $1 $ 到 n n n 编号,且编号较小的城市在编号较大的城市的西边,已知各个城市的海拔高度互 ...
- 题解报告:hdu 2066 一个人的旅行
Problem Description 虽然草儿是个路痴(就是在杭电待了一年多,居然还会在校园里迷路的人,汗~),但是草儿仍然很喜欢旅行,因为在旅途中 会遇见很多人(白马王子,^0^),很多事,还能丰 ...
最新文章
- 信息安全标准化国际组织
- java 序列化 写入mysql_java 序列化到mysql数据库中
- UPESB天气查询用例(三)
- CSRF——攻击与防御
- 【数据库系统工程师】数据库系统工程师考情分析
- 新出行超级产业链之交通工具变革(网址导航)
- 如何将png转换成jpg呢?
- 线性代数学习笔记——第六讲——矩阵的转置
- 什么是人机交互技术?
- MindSpore21天实战营(3):基于ResNet50实现毒蘑菇识别实战
- 【百科】中华医书集成
- 大数据初创企业Concurrent获千万美元融资
- 资源收集贴(持续更新...)
- jnz和djnz_51单片机之系统指令
- mysql本周 下周下月_mysql取今日,明天,工作日,周末,本周,下周,下月数据...
- 云计算学习好学吗?云计算这个行业前景如何?
- 省市区三级联动数据表
- 探究CRC32算法实现原理
- matlab无源滤波器,matlab在一阶无源带阻滤波器的应用
- 微软发布Windows Phone 8.1 Update 和中文版Cortana“小娜”