题意:求长度不超过K的最大的连续序列的和
思路:采用单调队列,我们要求的是Max{sum[i]-sum[j]}(i-j#include
#include
#include
#include
using namespace std;
const int MAXN = 1000005;
const int INF = 0x3f3f3f3f;
int n,k;
int arr[MAXN],s...
分类:
其他好文 时间:
2014-05-09 01:57:07
阅读次数:
264
根据题意,很明显可以推出DP方程。
假如只考虑向左的方向:
dp[t][i][j]: 第t个时间段末滑行到i,j最长滑行的距离。
dp[t][i][j]=dp[t-1][i][1..k]+(j-k)=dp[t-1][i][1..k]-k+j(k
最终时间复杂度为O(n*m*k)
#include
#include
#include
#include
#include
using nam...
分类:
其他好文 时间:
2014-05-07 04:49:13
阅读次数:
363
维护两个单调队列,一个存储当前点之前的最大值。
另外一个存储当前点之前的最小值。
若最大值与最小值之间的差大于k,那么就把最大值和最小值中位置靠前的往后移。
#include
#include
#include
#include
#include
using namespace std;
//#define INF ((1<<30)-1)
#define INF 0xfffff
#defin...
分类:
其他好文 时间:
2014-05-04 09:23:04
阅读次数:
372
单调队列入门题。。。
dp[i][j]:第i天,手中拥有j个股票时,获得的最大利润。
若第i天不买不卖:dp[i][j]=max(dp[i][j],dp[i-1][j]);
若第i天买 :dp[i][j]=max(dp[i][j],dp[i-w-1][k]-(j-k)*ap[i]);
若第i天卖 :dp[i][j]=max(dp[i][j],dp...
分类:
其他好文 时间:
2014-05-04 09:13:22
阅读次数:
303
ACM 单调队列 Sliding Window poj2823 单调队列详解...
Sliding Window
Time Limit: 12000MS
Memory Limit: 65536K
Total Submissions: 36315
Accepted: 10756
Case Time Limit: 5000MS
Description
An array of size n ≤ 106 is gi...
Max Sum of Max-K-sub-sequence
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 32768/32768 K (Java/Others)
Total Submission(s): 5673 Accepted Submission(s): 2049
Problem Description...
分类:
其他好文 时间:
2014-05-03 16:30:10
阅读次数:
412
转战单调队列,争取省赛前做完。。。。
这个题是很裸的单调队列。
不能用stl让人很蛋疼。。。。
就是用一个队列保存当前队伍的信息,如果来了一个大的,就把前面的小的挤掉。
#include
#include
#include
#include
#include
#include
using namespace std;
#define maxn 55000
#define INF 99999...
分类:
其他好文 时间:
2014-05-03 16:28:35
阅读次数:
342
Sliding Window
Time Limit: 12000MS
Memory Limit: 65536K
Total Submissions: 36212
Accepted: 10723
Case Time Limit: 5000MS
Description
An array of size n ≤ 106 is gi...
对不起。我们已经搬家了。您的 URL 是
http://www.w3school.com.cn
您将在 5 秒内被重定向到新的地址。
如果超过 5 秒后您仍然看到本消息,请点击上面的的链接。...
分类:
Web程序 时间:
2014-05-01 08:21:54
阅读次数:
395