poj3320 尺取法 挑战程序设计竞赛
2018-2-7
与poj3061类似,直接使用尺取法即可,这里使用STL里面的map求解更为方便,可以直接得到每个知识点出现的次数,继而便于进行加一减一操作。
#include<iostream>
#include<cstdio>
#include<map>
using namespace std;const int N = 1000000;
int x[N+1];
int p,cnt;
map<int,int>mp;void res(){int i=1,j=1,res=N;for (i=1;i<=p;i++){while (mp.size()!=cnt&&j<=p){if (mp.count(x[j])){mp[x[j]]++;}else{mp[x[j]]=1;}j++;}if (mp.size()!=cnt) break;res=min(res,j-i);if (mp[x[i]]==1){mp.erase(x[i]);}else{mp[x[i]]--;}}cout<<res<<endl;
}int main(){while (cin>>p){mp.clear();for (int i=1;i<=p;i++){scanf ("%d",&x[i]);if (mp.count(x[i])){mp[x[i]]++;}else{mp[x[i]]=1;}}cnt=mp.size();mp.clear();res();}return 0;
}
poj3320 尺取法 挑战程序设计竞赛相关推荐
- poj3061 尺取法 挑战程序设计竞赛
2018-1-6 直接使用尺取法求解即可,需要注意的是:如果说所有数的和都不能满足条件的话,那么就直接输出0即可. 尺取法的头部每次增加1,尾巴每次增加到满足条件即可. #include<ios ...
- ICPC程序设计题解书籍系列之三:秋田拓哉:《挑战程序设计竞赛》(第2版)
白书<挑战程序设计竞赛>(第2版)题目一览 白书:秋田拓哉:<挑战程序设计竞赛>(第2版) 第1章 蓄势待发--准备篇(例题) POJ1852 UVa10714 ZOJ2376 ...
- 《挑战程序设计竞赛(第2版)》习题册攻略
本项目来源于GitHub 链接: 项目GitHub链接 1 前言 项目为<挑战程序设计竞赛(第2版)>习题册攻略,已完结.可配合书籍或笔记,系统学习算法. 题量:约200道,代码注释内含详 ...
- 挑战程序设计竞赛(第2版)》
<挑战程序设计竞赛(第2版)> 基本信息 作者: (日)秋叶拓哉 岩田阳一 北川宜稔 译者: 巫泽俊 庄俊元 李津羽 丛书名: 图灵程序设计丛书 出版社:人民邮电出版社 ISBN:9787 ...
- 挑战程序设计竞赛:反转法
挑战程序设计竞赛:反转法 1. 题目介绍 1.1 题目 1.2 样例 2. 思路讲解 2.1 视频讲解 2.1 反转法(开关问题) 3. 练习题 4. 附录:程序代码 4.1 Java 4.2 C++ ...
- 《挑战程序设计竞赛》 读后感(转载)
<挑战程序设计竞赛> 读后感 最近要开始准备面试找工作,算法是准备的重中之重,舍友推荐了<挑战程序设计竞赛>这本书.花了一周的时间大体过了一遍,该书真切地让我理解了" ...
- 《挑战程序设计竞赛》之“反转”问题总结
<挑战程序设计竞赛>之"反转"问题总结 萌新又来写总结了 "反转"问题在<挑战程序设计竞赛>P150左右的位置~ 拒!绝!搜!索! 这类 ...
- 《挑战程序设计竞赛》--初级篇习题POJ部分【动态规划】
关于基本的动态规划和经典的动态规划,在之前已经总结过了,可以温习一下: 传送门 这次是延续上次的<挑战程序设计竞赛>初级篇,总结部分poj上的练习题,主要是DP方面的练习题: 一.基础的动 ...
- 《挑战程序设计竞赛》--初级篇习题POJ部分【2.4 - 2.6】
这次是延续上次的<挑战程序设计竞赛>初级篇,总结部分poj上的练习题,主要是2.4 ~ 2.6部分: 导航 2.4 加工并存储的数据结构 优先队列 Sunscreen MooUnivers ...
最新文章
- java openssl库,Java的OpenSSL
- Python 计算机视觉(十七)—— 基于KNN的图像分类
- python工作不好找吗_如何更好的找到 Python 工作?
- 计算指数c语言2的n次方,计算2的N次方........有什么错吗?
- 2.1.4 Python单例模式
- OpenVINO DL workbench的docker安装
- 容斥原理+简单博弈论(找个时间补充一下sg,希望我记得)
- 微信小程序图片宽高自适应
- Violations Associated with Nets
- 如何设计H5编辑器中的模版库并实现自动生成封面图
- CALPHAD方法中“外推”的理解
- 桃词典 Peach Dictionary 简易英语词典app开发 安卓软件开发 Part 3
- 腾讯云、阿里云都“服”了,云容灾你还迟疑什么?
- 介绍|三大前端框架之Vue
- 定时任务:创建静态定时任务、动态定时任务
- AndroidApp之图书管理系统(一)
- 为什么要对图像做Gamma校正?如何做?
- 插一根16G的内存条,和插两根8G的到底有区别吗?
- 6月26日科技资讯|华为获首张 5G 终端进网许可证;Linux 之父来华;Eclipse 4.12 发布
- 华为linux如何操作系统,华为网络大赛-服务器操作系统基础原理-Linux篇(1)