[Codeforces958F2]Lightsabers (medium)(思维)
Description
题目链接
Solution
设一个l指针指向当前数列左边,从左往右扫描一遍,将当前颜色记录,
当所有颜色都得到后,进行判断,如果当前l指向的颜色大于需要的颜色,l后移一位,然后更新答案
Code
#include <cstdio>
#include <set>
#define N 200010
using namespace std;set<int> q;
int n,m,col[N],cnt[N],k[N],Ans=1e9,sum,l=1,r;inline int read(){int x=0,f=1;char ch=getchar();while(ch<'0'||ch>'9'){if(ch=='-')f=-1;ch=getchar();}while(ch>='0'&&ch<='9'){x=x*10+ch-'0';ch=getchar();}return x*f;
}int main(){freopen("in.txt","r",stdin);n=read(),m=read();for(int i=1;i<=n;col[i++]=read());for(int i=1;i<=m;++i){if(k[i]=read()) q.insert(i);sum+=k[i];}for(r=1;r<=n;++r){if(++cnt[col[r]]==k[col[r]]) q.erase(col[r]);if(q.empty()){while(l<=r&&cnt[col[l]]>k[col[l]]) cnt[col[l++]]--;Ans=min(Ans,r-l+1-sum);}}if(Ans==1e9) Ans=-1;printf("%d\n",Ans);return 0;
}
转载于:https://www.cnblogs.com/void-f/p/8858223.html
[Codeforces958F2]Lightsabers (medium)(思维)相关推荐
- 数据科学中的强大思维
如果你参加过统计学入门课程,就会知道数据点可以用来激发灵感,也可以用来测试理论,但两者却不能兼顾,这是为什么呢? 人类擅长在所有的事物中寻找对应的模式. 真模式,假模式,命名的模式. 我们是那种能在薯 ...
- 数据结构稀疏矩阵的加法十字链表_学习数据结构和算法的框架思维
----------- 通知:如果本站对你学习算法有帮助,请收藏网址,并推荐给你的朋友.由于 labuladong 的算法套路太火,很多人直接拿我的 GitHub 文章去开付费专栏,价格还不便宜.我这 ...
- 数据科学的5种基本的面向业务的批判性思维技能
批判性思维 As Alexander Pope said, to err is human. By that metric, who is more human than us data scient ...
- 克服浮躁_设计思维:您克服并赢得低迷的最终工具。
克服浮躁 设计思维101 (Design thinking 101) Let's begin by getting ourselves clear on the question: What is d ...
- 你已经是一个成熟的码农了,这些思维习惯你要有!
不想成为好程序员的码农不是好工程师.出色的码农都具备怎样的思维习惯?这里有 25 条成熟的小建议. 「即使进行小的软件变更也很困难!」 「进行变更会破坏软件的特性.」 「修复一个 bug 的同时又引入 ...
- 人工智能ai思维_人工智能系统如何学习创造性思维
人工智能ai思维 In such a hot situation of artificial intelligence, there have been many examples of using ...
- 贝叶斯 定理_贝叶斯定理:批判性思维框架
贝叶斯 定理 Have you ever noticed how you can be fuming with anger one second and absolutely calm the nex ...
- 设计师思维 工程师思维_从设计思维到设计行为
设计师思维 工程师思维 By Marco Ossani & Gianluca Gambatesa Marco Ossani和Gianluca Gambatesa 为什么尽管进行了诚实的努力和对 ...
- 转发一篇好文:36氪翻译自medium的文章: 读书没有 KPI:为什么坚持“一年读 100 本书”没用?...
你只是为了达成所谓的数量目标而读书. 编者按:读书本是一项安静.缓慢的活动,但随着现代社会节奏的加快,信息技术的广泛普及,读书这一行为模式也开始发生了变化.越来越多的人开始碎片化阅读,并且越来越多的文 ...
最新文章
- 嵌入式系统自动使能alias
- stl源码剖析_STL之set源码剖析
- TextBlock 格式化内容
- 【ajax】前端ajax传值的几种方法
- 新浪微盘等大批网盘将关停 你的私藏文件导出来了吗?
- Apache JMeter使用教程
- Matlab最小二乘系统辨识
- 环境试验箱GB/T 2423标准下载合集
- netstate 命令归纳
- MIPI 和 DSI 协议
- python bunch制作可导入数据_Python bunch包_程序模块 - PyPI - Python中文网
- 【重磅】DeepMind开源史上最全强化学习框架OpenSpiel(附安装方法)
- 通过加速或跳过网页视频解决进度条无法拖动问题
- Elasticsearch 搜索引擎开发实战
- 静态代理的实现-模拟中介代理房东出租房子给房客
- 详解 ARM PMU (Performance Monitoring Unit)
- 模拟电子技术(二)基本放大电路
- cmnet是什么 cmnet是什么意思?cmnet和cmwap的区别在哪里
- 对于“int a[] = new int[3];”,下列哪个叙述是错误的?
- 如何彻底关闭 Hyper-V 服务