题目大意:给定一个长度为n的序列,求哪些长度为m的区间满足区间内最大值与最小值之差小于等于c
利用单调队列维护区间内的最大值和最小值- - 硬搞就可以了- -
刷刷水题真爽- -
#include
#include
#include
#include
#define M 1001001
using namespace std;
int n,m,c,a[M];
int q_max[M]...
分类:
其他好文 时间:
2015-01-18 22:43:00
阅读次数:
204
越来越水了。。。这道题是简单的单调队列,同时维护最大值和最小值即可。另解:multiset大法求区间最大最小,但是复杂度会上升。。。 1 /************************************************************** 2 Problem: 13...
分类:
其他好文 时间:
2014-11-01 00:51:32
阅读次数:
289
O(n)地枚举所有长度为k的段,每次暴力转移。转移的时候只是从最后插入一个数,从前面删去一个数。计算的时候要取当前的max和min。用multiset(∵元素是可重的)以上这些操作都是O(logn)的。 1 #include 2 #include 3 using namespace std; 4 m...
分类:
其他好文 时间:
2014-10-31 07:41:33
阅读次数:
270