NYOJ 18 The Triangle (动态规划复习)
2013-04-18 22:00
239 查看
#include<stdio.h> int f[105][105],c[105][105]; inline int max(int a,int b){ if(a>b) return a; return b; } int main() { int i,j,n; scanf("%d",&n); for(i=1;i<=n;i++) for(j=1;j<=i;j++) scanf("%d",&c[i][j]); for(i=n;i>0;i--) for(j=1;j<=i;j++){ f[i][j]=max(f[i+1][j],f[i+1][j+1])+c[i][j]; } printf("%d\n",f[1][1]); return 0; }
动态规划思想,自底向上!还有另种方法,是自顶向下,不知道算不算动态规划!贴上代码:
#include<stdio.h> int f[105][105]; inline int max(int a,int b){ if(a>b) return a; return b; } int main() { int i,j,c,n,m=0; scanf("%d",&n); for(i=1;i<=n;i++) for(j=1;j<=i;j++){ scanf("%d",&c); f[i][j]+=max(f[i-1][j],f[i-1][j-1])+c; if(m<f[i][j]) m=f[i][j]; } printf("%d\n",m); return 0; }
上述两种方法相比后者无论从时间上还是从空间上都比前者较好!
相关文章推荐
- NYOJ - 18 - The Triangle(动态规划--数字三角形)
- NYOJ171 聪明的kk (动态规划复习)
- nyoj 15 括号匹配(二)动态规划
- nyoj 16 嵌套矩形(DAG上的动态规划)
- 动态规划之——拦截导弹(nyoj79)
- The Triangle 【nyoj-18】【动态规划】
- NYoj 712 探寻宝藏[经典动态规划3](河南省第六届省赛)
- NYOJ-18-The Triangle
- nyoj-16 矩形嵌套 (DAG上的动态规划,记忆化搜索)
- NYOJ 18-The Triangle(典型DP)
- The Triangle (nyoj 18) [动态规划]
- nyoj 18 The Triangle 动态规划
- nyoj 16 矩形嵌套 (DAG上的动态规划)
- NYOJ 18 The Triangle(dp + 记忆化)
- NYOJ 题目625 笨蛋的难题(二)(动态规划,技巧)
- NYoj18 The Triangle
- nyoj18_The Triangle
- nyoj16矩形嵌套(DAG上的动态规划)
- NYoj 104 最大和 [经典动态规划2]
- Nyoj 492 骨牌铺方格[简单动态规划||斐波那契数列]