2096: [Poi2010]Pilots Description Tz又耍畸形了!!他要当飞行员,他拿到了一个飞行员测试难度序列,他设定了一个难度差的最大值,在序列中他想找到一个最长的子串,任意两个难度差不会超过他设定的最大值。耍畸形一个人是不行的,于是他找到了你。 Tz又耍畸形了!!他要当飞行员 ...
分类:
其他好文 时间:
2017-12-25 18:21:30
阅读次数:
222
2096: [Poi2010]Pilots Description Tz又耍畸形了!!他要当飞行员,他拿到了一个飞行员测试难度序列,他设定了一个难度差的最大值,在序列中他想找到一个最长的子串,任意两个难度差不会超过他设定的最大值。耍畸形一个人是不行的,于是他找到了你。 Tz又耍畸形了!!他要当飞行员 ...
分类:
其他好文 时间:
2017-09-03 16:41:11
阅读次数:
193
题目描述 Tz又耍畸形了!!他要当飞行员,他拿到了一个飞行员测试难度序列,他设定了一个难度差的最大值,在序列中他想找到一个最长的子串,任意两个难度差不会超过他设定的最大值。耍畸形一个人是不行的,于是他找到了你。 输入 输入:第一行两个有空格隔开的整数k(0<=k<=2000,000,000),n(1 ...
分类:
其他好文 时间:
2017-08-26 11:35:56
阅读次数:
106
【BZOJ2096】[Poi2010]Pilots Description Tz又耍畸形了!!他要当飞行员,他拿到了一个飞行员测试难度序列,他设定了一个难度差的最大值,在序列中他想找到一个最长的子串,任意两个难度差不会超过他设定的最大值。耍畸形一个人是不行的,于是他找到了你。 Tz又耍畸形了!!他要 ...
分类:
其他好文 时间:
2017-08-26 11:27:46
阅读次数:
138
bzoj2096[Poi2010]Pilots 题意: 给一个序列和一个最大值,要求找一个最长连续子串,使里面任意两个数相差不超过这个最大值。序列大小≤3000000 题解: 用两个单调队列,分别维护当前区间的最大值和最小值,然后用双指针法。 代码: 20160829 ...
分类:
其他好文 时间:
2016-09-03 22:33:09
阅读次数:
229
依旧是维护两个单调队列,只是队首检查的方式略有变动 ...
分类:
其他好文 时间:
2016-07-06 23:24:17
阅读次数:
219
对于合法区间的左右端点l,r,显然最左的l随着r增加而不减。 对于最大值和最小值分别维护一个单调队列,如果非法就挪l并出队。 1 #include<cstdio> 2 #include<iostream> 3 #include<cstring> 4 #include<algorithm> 5 #de ...
分类:
其他好文 时间:
2016-06-18 16:44:26
阅读次数:
139
用两个单调队列维护序列中的最大值和最小值即可。poi~#include#includeusing namespace std;int m,n,head[2]={1,1},tail[2]={1,1},q[2][3000001],a[3000001],ans;int main(){ scanf("%d%...
分类:
其他好文 时间:
2015-03-07 08:31:22
阅读次数:
149
题目大意:给定一个序列,求一个最长的子串,使最大值与最小值之差不超过k
从左到右枚举右端点,利用单调队列维护当前区间中的最大值和最小值
如果某一时刻当前区间的最大值和最小值之差超过了k,就向右调整左端点直到差小于等于k为止
时间复杂度O(n)
#include
#include
#include
#include
#define M 3003003
using namespace ...
分类:
其他好文 时间:
2015-01-20 13:47:34
阅读次数:
190
好奇怪啊,莫名其妙的WA了。。。两个类似单调队列的东西维护就可以了先挖个坑 1 /************************************************************** 2 Problem: 2096 3 User: rausen 4 L...
分类:
其他好文 时间:
2014-11-29 00:14:03
阅读次数:
164