hdu2391Filthy Rich(动态规划基础)
来源:互联网 发布:数据分级 英语 编辑:程序博客网 时间:2024/06/05 08:12
题目大意:输入一张整数表,求从左上角到右下角按每次向右,向下,或者是右下这种方式行走,到达右下角时能够收集的最大财富;
思路:很明显的dp,求到达右下角时最大,即每次到达的方格一定是他对应的左,上,左上三个方格中最大的,不断地化解子问题最终达到终点
代码如下:
#include<stdio.h>#include<string.h>int dp[1001][1001],map[1001][1001];int max_(int a,int b,int c){if(a>b){if(a>c)return a;elsereturn c;}else if(b>c)return b;elsereturn c;}int main(){int i,j,n,m,t,c=0;scanf("%d",&t);while(t--){scanf("%d%d",&n,&m);memset(dp,0,sizeof(dp));memset(map,0,sizeof(map));for(i=1;i<=n;i++)for(j=1;j<=m;j++)scanf("%d",&map[i][j]);for(i=1;i<=n;i++)for(j=1;j<=m;j++)dp[i][j]=max_(dp[i-1][j],dp[i][j-1],dp[i-1][j-1])+map[i][j];printf("Scenario #%d:\n%d\n\n",++c,dp[n][m]);}return 0;}
阅读全文
0 0
- hdu2391Filthy Rich(动态规划基础)
- Filthy Rich(动态规划)
- (动态规划)Filthy Rich
- Filthy Rich(动态规划)
- 杭电2391Filthy Rich(动态规划)
- hdoj 2391 Filthy Rich (动态规划)
- HDU 2391 Filthy Rich(动态规划)
- 【动态规划(一)】动态规划基础
- 动态规划 -- 动态规划基础
- HDOJ 2391 Filthy Rich dp动态规划.....so easy......
- C语言动态规划(3)___Filthy Rich(Hdu 2391)
- 动态规划基础学习(一)线性
- 动态规划基础(数字三角形)
- 动态规划拦截导弹(基础dp)
- 基础算法(四)---动态规划算法
- 动态规划基础
- 动态规划基础
- 算法基础---动态规划
- [Leetcode] 41, 75, 34
- hdu6147 模拟
- 为什么是装饰模式而不是继承
- python 程序运行时间
- Leetcode Best Time to Buy and Sell Stock
- hdu2391Filthy Rich(动态规划基础)
- idea热部署静态资源无法及时生效
- Python单元测试(doctest和unittest)
- nodejs express template (模版)的使用 (ejs + express)
- JavaScript权威指南读书笔记——第十七章 事件处理
- C++ 带空格的字符串输入
- 回调函数例题
- HDU-1524-A Chess Game && POJ-2425 【sg】
- 剑指Offer—21—栈的压入、弹出序列