2016春季练习——DP
2016-04-12 11:43
176 查看
来源:lightOJ1004
比数字三角形多一点的DP,dp中很简单的题目。关键就是控制输入,然后DP的过程和输入是一样的.
代码:
比数字三角形多一点的DP,dp中很简单的题目。关键就是控制输入,然后DP的过程和输入是一样的.
代码:
#include <iostream> #include <cstdio> #include <cmath> #include <cstring> #include <algorithm> using namespace std; const int MAXN=210; int a[MAXN][MAXN]; long long ans[MAXN][MAXN]; int main(){ int T,nc=1,n; scanf("%d",&T); while(T--){ memset(a,0,sizeof(a)); memset(ans,0,sizeof(ans)); scanf("%d",&n); int i,j; for(i=1;i<=n;i++){ for(j=1;j<=i;j++) scanf("%d",&a[i][j]); } //cout<<n<<" : "<<i<<endl; for(i=n+1;i<=2*n-1;i++){ for(j=1;j<=2*n-i;j++) scanf("%d",&a[i][j]); } for(i=1;i<=n;i++) for(j=1;j<=i;j++){ ans[i][j]=max(ans[i-1][j],ans[i-1][j-1])+a[i][j];//一直到这一步和数字三角形完全一样 } for(i=n+1;i<=2*n-1;i++) for(j=1;j<=n*2-i;j++){ ans[i][j]=max(ans[i-1][j],ans[i-1][j+1])+a[i][j]; } printf("Case %d: %lld\n",nc++,ans[2*n-1][1]); } return 0; }
相关文章推荐
- iOS开发-两个APP之间跳转、传值
- 高性能I/O设计模式Reactor和Proactor
- 阿里云云主机添加swap分区与swap性能优化
- 自定义异常
- Android 动画之TranslateAnimation应用详解
- linux基础学习笔记-2-关于控制台的基本操作
- Java虚拟机学习 - 内存调优
- history显示时间,执行人等信息
- Android_system_调用系统联系人拨打电话
- Android性能优化总结一
- 转 : 27个提升效率的iOS开源库推荐
- 离散余弦变换matlab
- SPI总线(一)
- .NET下实现分布式缓存系统Memcached
- JVM 调优 —— GC 长时间停顿问题及解决方法
- 深入理解CSS线性渐变linear-gradient
- 160411、实时监控mysql数据库变化
- 如何判断当前的Fragment是否可见?Fragment的可见与不可见的判断方法。
- 密码:------(超过6位),确认按钮才亮1
- 文件拷贝