单调队列
yp_2013
这个作者很懒,什么都没留下…
展开
-
POJ 3709 K-Anonymous Sequence
斜率优化dp 题意: 将题目转化下:将一个升序的,有N个元素的序列,分组。要求每组的元素不少于K个,计算出组内各元素与最小元素的之差的和,将每组的这个值加起来,其和要最小。很容易可以得出一个结论:连续取比离散取得到的结果要好(很容易证,所以不证)。由以上可得DP方程: dp[i]=MIN(dp[j]+sum[i]-sum[j]-(i-j)*arr[j+1]); j#include<bits/s原创 2016-03-15 17:44:19 · 330 阅读 · 0 评论 -
单调队列入门
Max Sum of Max-K-sub-sequence Time Limit : 2000/1000ms (Java/Other) Memory Limit : 32768/32768K (Java/Other)Total Submission(s) : 46 Accepted Submission(s) : 4Problem Description Given a circle s原创 2016-02-22 19:41:25 · 436 阅读 · 0 评论 -
hdu 5289 Assignment
传送门: http://acm.hdu.edu.cn/showproblem.php?pid=5289题意:找出一段区间里面最大值减去最小值小于k的区间个数由于昨天做了那道线段树区间最值的题目,因此想起了这道多校第一场的第二题,用了双指针加线段树,秒A! 注意用线段树判断的时候别越界了!#include<bits/stdc++.h>using namespace std;#define ll原创 2016-02-12 09:48:03 · 259 阅读 · 0 评论 -
hdu 3706
http://acm.hdu.edu.cn/showproblem.php?pid=3706一看就是单调队列的水题!#include <iostream>#include <cstring>#include <algorithm>#include <cstdio>#include <queue>using namespace std;typedef long long ll;ll n,原创 2016-02-26 16:56:19 · 440 阅读 · 0 评论 -
hdu 4122 单调队列或线段树
/**hdu 4122 单调队列题目大意:给定n个时刻,在每一个时刻都要生产ai个月饼。给出m个可以生产的时刻,每个时刻单个生产费用为bi,单个月饼可储存T时间,单位时间费用为S 问如何安排生产花费最少解题思路:用单调队列维护一个点之前所有点的最小花费(为生产费+储存费)特别注意:n个时刻可能有重复的*/#include <string.h>#include <alg原创 2016-06-10 16:43:32 · 316 阅读 · 0 评论