博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
poj3320 Jessica's Reading Problem(尺取思路+STL)
阅读量:5265 次
发布时间:2019-06-14

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

尺取法,要想好组织方式。

又被卡了cin。。

#include
#include
#include
#include
#include
#include
#include
#include
#include
#define lson l, m, rt<<1#define rson m+1, r, rt<<1|1#define INF 0x3f3f3f3ftypedef unsigned long long ll;using namespace std;set
st;map
mp;int a[100010];int main(){ int n; scanf("%d", &n); for(int i = 0; i < n; i++){ scanf("%d", &a[i]); st.insert(a[i]); mp[a[i]] = 0; } int m = st.size(); int s=0, t=0, num=0, ans = INF; while(1){ while(t < n&&num < m){ //判断种类是否都涵盖 if(mp[a[t++]]++ == 0){ //如果是该类知识点的第一个 num++;//种类++ } } if(num < m) break; ans = min(ans, t-s); if(--mp[a[s++]] == 0){ //后判断a[s]的类的个数--后是否为0 num--;//种类-- } } printf("%d\n", ans); return 0;}

 

转载于:https://www.cnblogs.com/Surprisezang/p/9019287.html

你可能感兴趣的文章
win10 进入安全模式的方法
查看>>
ADO.NET 组件
查看>>
python操作MySQL数据库
查看>>
多线程
查看>>
用格式工厂将mts文件转换成其它格式flv,mpg失败
查看>>
web service和ejb的区别
查看>>
Python推荐算法学习1
查看>>
包含LOB_Data列的表删除大量数据后表及数据库文件的收缩
查看>>
libhdfs配置使用
查看>>
Silverlight StoryboardManager 故事板管理类
查看>>
makefile函数
查看>>
vue.js
查看>>
持续学习
查看>>
迭代器和生成器(难点)
查看>>
内存分为的5大区
查看>>
5. Docker - 仓库管理
查看>>
Windows Azure Cloud Service (29) 在Windows Azure发送邮件(下)
查看>>
CS61A Efficiency 笔记
查看>>
197. 上升的温度
查看>>
ArcGIS Server Javascript 多图对比功能
查看>>