洛谷P1638 逛画展-最简单的双指针做法
思路:定义双指针x和y代表【x,y】区间,初始化x=y=0开始遍历,刚开始时一直增加y直到包含了所有作家的画,然后就从左边x开始删区间有重复作家的画就行。注意不要把任何一个作家的画删到0!!
代码如下
#include <iostream>
#include <algorithm>
using namespace std;
int arr[1000005];
int co[1000005];//co[i]代表在当前区间第i个作家的画数
int flag;
int main()
{int n, m, ans = 0x3f3f3f3f;cin >> n >> m;int x = 1, ansx, ansy;//区间为【x,y】但y在后面有循环来代替了int cnt = 0;//当前区间包含了cnt个作家for (int i = 1; i <= n; i++){cin >> arr[i];}for (int i = 1; i <= n; i++)//i代表区间右端y{if (++co[arr[i]] == 1)//第一次收录该作家的画cnt++;if (cnt == m){while (co[arr[x]] > 1){//如果左边x指的画还有同作者的画那就可以删左边的画co[arr[x]]--;x++;}if (ans > i - x){//更新更省钱的方案ansy = i;ansx = x;ans = i - x;}}}cout << ansx << " " << ansy << endl;return 0;
}
洛谷P1638 逛画展-最简单的双指针做法相关推荐
- 洛谷 P1638 逛画展
洛谷 P1638 逛画展 题目链接 题目描述 博览馆正在展出由世上最佳的 M 位画家所画的图画. wangjy想到博览馆去看这几位大师的作品. 可是,那里的博览馆有一个很奇怪的规定,就是在购买门票时必 ...
- 洛谷 [P1638 逛画展] (尺取法)
Link https://www.luogu.org/problemnew/show/P1638 Description 博览馆正在展出由世上最佳的 M 位画家所画的图画.wangjy想到博览馆去看 ...
- 洛谷P1638 逛画展
题目描述 博览馆正在展出由世上最佳的 m 位画家所画的图画. 游客在购买门票时必须说明两个数字,a 和 b,代表他要看展览中的第 a 幅至第 b 幅画(包含 a,b)之间的所有图画,而门票的价钱就是一 ...
- 【洛谷 P1638】 【单调队列】 逛画展
[洛谷 P1638] [单调队列] 逛画展 题目 解题思路 先求出最前面囊括所有画的位置 然后如果左边界的画不止存在一次,左边界右移 不断扩展右边界,求取答案 代码 #include<iostr ...
- 尺取法 P1638 逛画展
P1638 逛画展 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 题意: 其实就是求刚好拥有所有m种数字的最短区间 思路: 尺取法 当区间内数字种数刚好为m时记录一下最小区间长度 ...
- P1638 逛画展(尺取)
逛画展 - 洛谷https://www.luogu.com.cn/problem/P1638 #include <iostream> #include <cstdio> #in ...
- P1638 逛画展——尺取法的妙用
题目描述 博览馆正在展出由世上最佳的 mm 位画家所画的图画. 游客在购买门票时必须说明两个数字,aa 和 bb,代表他要看展览中的第 aa 幅至第 bb 幅画(包含 a,ba,b)之间的所有图画,而 ...
- 洛谷 P3953 逛公园
原题链接 题目描述 策策同学特别喜欢逛公园.公园可以看成一张 NN 个点 MM 条边构成的有向图,且没有 自环和重边.其中 11 号点是公园的入口,NN 号点是公园的出口,每条边有一个非负权值, 代表 ...
- 洛谷P3953 逛公园(dp 拓扑排序)
题意 题目链接 Sol 去年考NOIP的时候我好像连最短路计数都不会啊qwq.. 首先不难想到一个思路,\(f[i][j]\)表示到第\(i\)个节点,与最短路之差长度为\(j\)的路径的方案数 首先 ...
最新文章
- 面试官:聊聊分布式事务,再说说解决方案!
- 正则表达式 学习笔记5.3
- led灯光衰怎么解决_什么是LED光衰,光衰怎么解决?
- 【笨嘴拙舌WINDOWS】字符类型与字符串
- multiple problems have occured
- Java多线程系列--“JUC原子类”03之 AtomicLongArray原子类
- pytorch Dataset, DataLoader产生自定义的训练数据
- 达内php吾爱_2018年达内c++全套视频课程(不加密)
- java-number
- php 实现类,php 获取页面中指定内容的实现类
- [架构] 分布式和集群的区别
- 5分绩点转4分_高考语文如何考上120分?衡中老师建议:这5点高中生必须重视
- android h5语音,html5录音支持pc和Android、ios部分浏览器,微信也是支持的,JavaScript getUserMedia...
- 【BZOJ3669】【codevs3314】魔法森林,写作LCT,读作SPFA
- OpenShift 4 - 使用 Trivy Operator 对项目中的镜像进行安全扫描
- stl之set集合容器应用基础
- C++基础教程之引用
- html中label中的for属性
- Spring中自动装配
- rpcbind.service启动失败