题目:最大字段积。
分析:dp,最大字段和类似物。求解过程同最大字段和。
这里注意,设置两个状态:以本元素结束时,最大正值和最小的负值。
更新时,如果data[i]为正,则对应跟新,如果data[i]为负,则交叉跟新,
data[i]为0时,当前最大值,最小值置零。
本体数据较小,可以直接用O...
分类:
其他好文 时间:
2014-10-07 14:55:53
阅读次数:
219
事实上这连续发表的三篇是一模一样的思路,我就厚颜无耻的再发一篇吧!题目链接:http://acm.hdu.edu.cn/showproblem.php?pid=1003------------------------------------------------------------------...
分类:
其他好文 时间:
2014-09-30 12:47:49
阅读次数:
161
题目:有一串数,从里面取出m个不同的区间,每个区间长度不能超过M,使得所取所有数字和最大。
分析:dp,单调队列,区间最大字段和。因为数据都是正的不需要单调队列维护(否则要使用)。
区间最大字段和,求出每个元素作为结束标志的前k项和;取结束位置作为dp状态;
然后,利用单调队列维护区间长度,O(1)时间查找满足长度的最小的前j项和,做差即可。
...
分类:
其他好文 时间:
2014-09-27 11:32:09
阅读次数:
205
过于naive了= =作为一个知识点总结一下算了。主要就是合并。对于一个区间的最大字段和,可以分别事下面的两个区间的子段和,或者事左边的右边加右边的左边。然后搞一下 = =#include #include #include #include using namespace std;typedef ...
分类:
其他好文 时间:
2014-09-23 19:59:15
阅读次数:
248
题目:找到一个序列中的两个连续段使得他们的和最大。
分析:dp,最大字段和。双向求最大字段和,枚举结束点找到加和最大值。
说明:与合唱队形类似。(同poj2593)(2011-09-24 02:09)
#include
#include
int data[ 50005 ];
int asum[ 50005 ];
int bsum[ 50005 ];
void msum( int *D...
分类:
其他好文 时间:
2014-09-17 21:53:22
阅读次数:
233
题目连接:http://acm.hdu.edu.cn/showproblem.php?pid=1003题意:给你一组数字,求出最大的字段和。思路:这是一个经典的dp题目,定义数组a储存一组数字,a[j]为ji个数,dp[j]表示已j结尾的最大字段和,那么dp[j]=max(dp[j-1]+a[j],...
分类:
其他好文 时间:
2014-08-18 09:14:13
阅读次数:
234
一维最大字段和的扩展。
要诀是固定列的左右点,比如左边记录为left, 右边记录为right,那么一个循环left从0到COL,行最大值,那么right从left开始循环到COl,就可以考虑到所有列组合了,这个循环是O(n*n),然后求范围列内的行最大子段和,时间是O(n),
这样巧妙地把二维的问题转化为一维了,最终时间复杂度是O(n^3)。
可以参考Geeks上的讲解,不过他的最大...
分类:
其他好文 时间:
2014-08-08 18:12:56
阅读次数:
227
Max Sequence
Time Limit: 3000MS
Memory Limit: 65536K
Total Submissions: 15569
Accepted: 6538
Description
Give you N integers a1, a2 ... aN (|ai|
You should ou...
分类:
其他好文 时间:
2014-08-06 11:59:11
阅读次数:
232
/* 动态转移方程:dp[i][j]=max(dp[i-1]+a[i], max(dp[t][j-1])+a[i]) (j-1 2 #include 3 #include 4 #define N 10000 5 using namespace std; 6 7 int dp[N][N...
分类:
其他好文 时间:
2014-07-29 17:02:02
阅读次数:
344
1. 将一个数组分成左右两部分,使得右边的某个连续子段和减去左边的某个连续字段和最小[7,8,9,|3,5,-1] sum right - sum left minimal想到左右分一刀,O(n),然后对左右分别取最大字段和算法,这样是O(n^2)。但是其实左右各扫一遍,然后记录下来就行了。int ...
分类:
其他好文 时间:
2014-07-26 01:50:46
阅读次数:
219