随笔分类 -  ACM----动态规划

HDOJ 1024 Max Sum Plus Plus
摘要:点击打开链接 http://acm.hdu.edu.cn/showproblem.php?pid=1024思路:利用动态规划的方法,求解最大m子段的和,由于这一题的数据量很大,所以不能用二维的dp 方 程,考虑优化 用一个temp[1000005]来存储前j个元素的i个子段的最大和,则有dp[j]=max(dp[j-1]+s[j],temp[j-1]]+s[j]) 表示以s[j]结尾的元素的最大的子段和注意:输入数据很多使用scanf代码:#include <iostream>#include <algorithm>#include <map>#includ 阅读全文

posted @ 2012-06-25 12:48 c语言源码 阅读(180) 评论(0) 推荐(0)

HDOJ 1003 maxsum
摘要:http://acm.hdu.edu.cn/showproblem.php?pid=1003思路:就是求最大的子段和,只是要标记起始位置和末尾置,注意begin和end的标记代码:#include <iostream>#include <cstdio>#include <cstring>using namespace std;int sum[100005];int dp[100005];int begin , end;void DP(int m){ int i , j; int max , mark;要用一个mark来作为中间变量判断是否要改变begin b 阅读全文

posted @ 2012-06-23 12:31 c语言源码 阅读(208) 评论(0) 推荐(0)

导航