POJ 3320 Jessica的阅读有问题(尺取 ,map)

2024-02-07 20:48

本文主要是介绍POJ 3320 Jessica的阅读有问题(尺取 ,map),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

/*

首先,这个要用尺取...就是先把size取到,一共有那么多(用set)  之后框框一下 框到了足够的/最大的  就继续往前走....

如果还是重复的 就稍微记录一下

有个注意的就是,给你只有1e6+5 但是数据的话可能会有更大...int;类型的  数组开不来那么大啊  那你用map存一下 

map只要把那个cnt都换成m就过了...

抽特王说都改成while/都改成if比较好..好看  昨天自己想了有点久 错来错去  后来还是下面的代码-.-.  done...自己思索真是个吉安娜的过程啊!

前后变了几次...反正区间r-l要注意一下

还有就是要思路清晰 不要看着代码 随便输入进去几个奇怪的例子再补补补 最好在草稿纸上也写一下什么的x

(猛地一想好像还卡了挺久的...bfs这种,我就更无力..好菜啊T  T  加油加油加油多打代码!!!)

另: set里面用conut而不是find记录是否出现过  /  erase可以删掉

18-5-12

*/


#include<iostream>
#include<string>
#include<cmath>
#include<algorithm>
#include<set>
#include<map>
using namespace std;
typedef  long long ll;
int a[1000005];
//runtime error means...  int有 ,但是你开不到那么大
map<int, int>m;
//int cnt[1000005] = {0};
int  main() {int n;cin >> n;int maxn = 1000005;set<int>s;for (int i = 1; i <= n; i++){//cin >> a[i];scanf_s("%d",&a[i]);s.insert(a[i]);}int nn = 0;int num = s.size();//一共这么多-.-int t = 1; int l = 1;while (1) { while (t <= n&&nn < num)//t=n的时候跳出循环吗{//nn==num的时候是不用再加了的...但是n==t的时候还请再算一遍呀if (m[a[t]] == 0)nn++;m[a[t]]++;t++;}if (num > nn)break;//是上面的条件maxn = min( maxn,t-l);//成功了之后就要出来了-.-  唉if(--m[a[l++]]==0)nn--;}cout << maxn<<endl;return 0;
}

这篇关于POJ 3320 Jessica的阅读有问题(尺取 ,map)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/688890

相关文章

SpringBoot启动报错的11个高频问题排查与解决终极指南

《SpringBoot启动报错的11个高频问题排查与解决终极指南》这篇文章主要为大家详细介绍了SpringBoot启动报错的11个高频问题的排查与解决,文中的示例代码讲解详细,感兴趣的小伙伴可以了解一... 目录1. 依赖冲突:NoSuchMethodError 的终极解法2. Bean注入失败:No qu

MySQL新增字段后Java实体未更新的潜在问题与解决方案

《MySQL新增字段后Java实体未更新的潜在问题与解决方案》在Java+MySQL的开发中,我们通常使用ORM框架来映射数据库表与Java对象,但有时候,数据库表结构变更(如新增字段)后,开发人员可... 目录引言1. 问题背景:数据库与 Java 实体不同步1.1 常见场景1.2 示例代码2. 不同操作

SpringBoot如何通过Map实现策略模式

《SpringBoot如何通过Map实现策略模式》策略模式是一种行为设计模式,它允许在运行时选择算法的行为,在Spring框架中,我们可以利用@Resource注解和Map集合来优雅地实现策略模式,这... 目录前言底层机制解析Spring的集合类型自动装配@Resource注解的行为实现原理使用直接使用M

如何解决mysql出现Incorrect string value for column ‘表项‘ at row 1错误问题

《如何解决mysql出现Incorrectstringvalueforcolumn‘表项‘atrow1错误问题》:本文主要介绍如何解决mysql出现Incorrectstringv... 目录mysql出现Incorrect string value for column ‘表项‘ at row 1错误报错

如何解决Spring MVC中响应乱码问题

《如何解决SpringMVC中响应乱码问题》:本文主要介绍如何解决SpringMVC中响应乱码问题,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring MVC最新响应中乱码解决方式以前的解决办法这是比较通用的一种方法总结Spring MVC最新响应中乱码解

pip无法安装osgeo失败的问题解决

《pip无法安装osgeo失败的问题解决》本文主要介绍了pip无法安装osgeo失败的问题解决,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一... 进入官方提供的扩展包下载网站寻找版本适配的whl文件注意:要选择cp(python版本)和你py

解决Java中基于GeoTools的Shapefile读取乱码的问题

《解决Java中基于GeoTools的Shapefile读取乱码的问题》本文主要讨论了在使用Java编程语言进行地理信息数据解析时遇到的Shapefile属性信息乱码问题,以及根据不同的编码设置进行属... 目录前言1、Shapefile属性字段编码的情况:一、Shp文件常见的字符集编码1、System编码

C++ 各种map特点对比分析

《C++各种map特点对比分析》文章比较了C++中不同类型的map(如std::map,std::unordered_map,std::multimap,std::unordered_multima... 目录特点比较C++ 示例代码 ​​​​​​代码解释特点比较1. std::map底层实现:基于红黑

Spring MVC使用视图解析的问题解读

《SpringMVC使用视图解析的问题解读》:本文主要介绍SpringMVC使用视图解析的问题解读,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录Spring MVC使用视图解析1. 会使用视图解析的情况2. 不会使用视图解析的情况总结Spring MVC使用视图

Redis解决缓存击穿问题的两种方法

《Redis解决缓存击穿问题的两种方法》缓存击穿问题也叫热点Key问题,就是⼀个被高并发访问并且缓存重建业务较复杂的key突然失效了,无数的请求访问会在瞬间给数据库带来巨大的冲击,本文给大家介绍了Re... 目录引言解决办法互斥锁(强一致,性能差)逻辑过期(高可用,性能优)设计逻辑过期时间引言缓存击穿:给