动态规划(Dynamic Programming, DP)为一常用算法思想,本文讲述如何利用DP解决常见的最大字段和及其变种问题。一、 最大字段和问题问题定义设数组为a[k]a[k],1≤k≤n1 \le k \le n,最大字段和XX定义为:X=max1≤i≤j≤n{∑k=ija[k]} X=\max_{1\le i \le j \le n}\{\sum_{k=i}^j a[k]\} XX直观含义...
分类:
其他好文 时间:
2015-07-22 01:40:17
阅读次数:
108
问题: 给定n个整数(可能为负数)组成的序列a[1],a[2],a[3],…,a[n],求该序列如a[i]+a[i+1]+…+a[j]的子段和的最大值。当所给的整均为负数时定义子段和为0,依此定义,所求的最优值为: Max{0,a[i]+a[i+1]+…+a[j]},1#include using ...
分类:
其他好文 时间:
2015-07-15 11:02:28
阅读次数:
187
7月11日 bc总结A题:暴力替换p,然后贪心求最大字段和。贪心求最大字段和的方法居然忘了。。。 now每次加上a[i],如果now>ans,更新ans;如果now#include#include#include#include#include#include#include#include#i.....
分类:
其他好文 时间:
2015-07-11 22:42:23
阅读次数:
199
《算法导论》一书中对最大字段和可谓讲的是栩栩如生,楚楚动人。如果简单的说最大字段和,没有意义。而《算法导论》上举了一个股票的例子。根据股票每天结束的价格来求出一段时间内何时买入何时卖出能是收益最大。把问题做一个转换,求出相邻天数的股票价格的差值(周二 - 周一 = 差值),然后求出连续天数差值和.....
分类:
编程语言 时间:
2015-05-14 11:24:00
阅读次数:
138
分析:利用求最大子段和的思想进行求解。
1、首先累加s[i][j],表示第j列中i从第1行加到第i行的和。
2、对每一列的i1到i2行的和进行计算(0
3、对t[k]求最大字段和。
4、对所有t[k]求出的最大字段和求最大值,即可得到最大子矩阵的和。
5、注意:对maxres=0;maxres|=1
#include
using namespace std;
int G...
分类:
其他好文 时间:
2015-03-14 21:47:19
阅读次数:
207
/*求最大字段和,d[i]表示已i 结尾(字段和中包含i )在a[1..i] 上的最大和,d[i]=(d[i-1]+a[i]>a[i])?d[i-1]+a[i]:a[i];max = {d[i],1>t; int count1=0; while(t--) { coun...
分类:
其他好文 时间:
2015-01-24 20:04:48
阅读次数:
117
http://acm.hdu.edu.cn/showproblem.php?pid=1024 最大m字段和,题目就不多说了,经典dp这题坑爹。。。首先不说明m的范围(n_->),但事实上,完全可以每次memset一遍,因为超时,不敢==。各种原因,几分钟敲完的水题调了1个多小时!我也是醉了。。。 1...
分类:
其他好文 时间:
2014-11-06 02:02:19
阅读次数:
230
这道题就是给出一串数,然后要我们求出其最大字串和!
然后由于要输出字串的起末位置,所以记得保存好位置的值!
代码中关键地方有详细的注释!可以在看代码的时候看一下!
注意下:就是在两组数据间是需要用一行空行来隔开的,
所以输出时需要注意下!
代码如下:
#include
#include
#include
using namespace std;
int n,nu...
分类:
其他好文 时间:
2014-11-04 21:15:24
阅读次数:
243
[-2,2,3,-1]的最大字段和是[2,3]/*动态规划算法:**b[j]=max{a[i]+ +a[j]},10时b[j]=b[j-1]+a[j],否则b[j]=a[j]。故b[j]的动态规划递归式为:**b[j]=max(b[j-1]+a[j],a[j]),10) b+=...
分类:
其他好文 时间:
2014-10-28 02:04:08
阅读次数:
194
定义:
线性DP问题的子状态与父状态之间往往相差一个元素,所以子状态通过添加一个增量而转换到父状态。从最小的子问题到原问题,一层一层的状态转移呈现出线性递增的关系,所以称为线性DP。
经典的线性DP问题有最大字段和、最长公共子序列、最长回文子序列、最长不下降(下降)子序列等等。。。
大部分的线性DP都是1维的。
陆续更新线性DP的题。...
分类:
其他好文 时间:
2014-10-16 16:01:22
阅读次数:
198