HDOJ 2084 数塔问题
2013-11-09 23:02
288 查看
自底向上求解。状态转移方程是dp[i][j] = max(dp[i+1][j],dp[i+1][j+1]) + a[i][j].
一开始一直WA,后来把数组最大下标值从100改成101就AC了。
一开始一直WA,后来把数组最大下标值从100改成101就AC了。
#include <iostream> #include <fstream> using namespace std; int findMax(int a , int b) { return a >= b ?a:b; } int main() { //ifstream cin("input.txt"); int testNum,n; int dp[101][101],a[101][101]; cin>>testNum; while (testNum--) { cin>>n; for(int i = 1 ; i <= n ; i++) { for(int j = 1 ; j <= i ; j++) cin>>a[i][j]; } /*for(int i = 1 ; i <= n ; i++) { for(int j = 1 ; j <= i ; j++) cout<<a[i][j]<<" "; cout<<endl; }*/ for (int i = 1 ; i<=n;i++) dp [i] = a [i]; for(int i = n-1 ; i >= 1 ; i--) { for (int j = 1 ; j <= i ; j++) { dp[i][j] = findMax(dp[i+1][j],dp[i+1][j+1]) + a[i][j]; } } /*for(int i = 1 ; i <= n ; i++) { for(int j = 1 ; j <= i ; j++) cout<<dp[i][j]<<" "; cout<<endl; }*/ cout<<dp[1][1]<<endl; } return 0; }
相关文章推荐
- 借我一双慧眼----虚拟化工程师之解读
- 利用ASIHttp实现文件的下载、上传和网络状态的监控
- mysql cmd 启动服务
- HDUOJ----1181 变形课
- 深入C++的new (转载)
- Jeecg Excel工具类 实体类篇
- miui恢复联系人之我的方法
- J2SE5新特性
- deadline-iosched.txt
- 求1000以内的完数
- 个人校招经历及面试题目
- mysql数据库CURD
- MongoDB笔记(一):MongoDB介绍及Windows下安装
- cpuacct.txt
- hdu 4771, 枚举
- java操作mysql的小程序
- MySQL数据库的优化(下)MySQL数据库的高可用架构方案
- Documentation_powerpc_cpu_features.txt
- 多线程实现
- createsamples.cpp全过程解析