关于动态规划 “数塔”问题~
2011-04-10 21:54
239 查看
问题是这样子的 给出如图所示的一个数塔 ,每次只可以走往左下或者往右下走,要求走到最后数值之和最大?(此类问题可以延伸到求出具体路径还有最后模4最大……)
可以定义一个二位数组,然后从下往上每次得到面一个位置所在的数字都是由其与下面的两个相邻数中较大的数之和所得,最后所得数就是所需答案了,, 具体为dp[i][j]=max{dp[i+1][j],dp[i+1][j+1]}+dp[i][j] 即可。。
我把我写的代码部分放在这边,大牛看到,有不足支出还请帮助纠正一下。
可以定义一个二位数组,然后从下往上每次得到面一个位置所在的数字都是由其与下面的两个相邻数中较大的数之和所得,最后所得数就是所需答案了,, 具体为dp[i][j]=max{dp[i+1][j],dp[i+1][j+1]}+dp[i][j] 即可。。
我把我写的代码部分放在这边,大牛看到,有不足支出还请帮助纠正一下。
for(i=0;i<n;i++) for(j=0;j<=i;j++) scanf("%d",&dp[i][j]); for(i=n-2;i>=0;i--) for(j=0;j<=i;j++) dp[i][j]=max(dp[i+1][j],dp[i+1][j+1])+dp[i][j]; printf("%d/n",dp[0][0]);
相关文章推荐
- 关于动态规划与分治的问题
- 关于动态规划------背包问题
- 算法分析与设计实验二(关于动态规划问题)
- 算法分析与设计实验二(关于动态规划问题)
- 动态规划的01背包问题---关于国王开矿的故事
- [运筹学]关于动态规划的2个问题-最长公共子序列与最长非降子序列问题
- 关于《编程之美》中买书问题动态规划Java简单实现
- 一直复略了的一个问题,关于表单重复提交
- 关于使用FtpClient deleteFile 删除文件时删除不了问题解决
- 关于STM32下载问题的简单理解
- 一个可能是关于namespace的问题?
- 关于iphone 6 ios8网站背景图片错乱的问题解决办法
- 关于Google浏览器添加QQ电脑管家广告过滤插件出现2345主页拦截问题
- 关于改变Google浏览器出现input输入框变黄色问题
- 一个关于java初始化的问题
- 关于firefox 中 margin-top问题
- [VB.NET]关于dataset的haschanges问题
- 关于360安全卫士增加网络流量监控后上不了网的问题
- 关于hostapd 消息处理的细节问题,兼答网友第三次问
- 关于float double的数据类型的细节,在处理转换问题的时候非常有用