摘要

题目链接 难度等级 完成状态 完成分数 最后编辑时间 需要注意
数字三角形 ★☆☆☆☆ 答案正确 100 2014/11/28 21:11:25

题意

在数字三角形,求从顶部到底部一条路径之和的最大值。

题解

  • 最简单的棋盘动态规划,从底部往顶部递推可能比较好写一点,That's all

代码

1220.cpp代码已折叠
展开折叠内容
显示/移除行号
  1. #include<cstdio>
  2. #include<algorithm>
  3. int f[200][200],m,a[200][200];
  4. int main()
  5. {
  6. scanf("%d",&m);
  7. for(int i=1;i<=m;++i)
  8. for(int j=1;j<=i;++j)
  9. scanf("%d",&a[i][j]);
  10. for(int i=m;i>=1;--i)
  11. for(int j=1;j<=i;++j)
  12. f[i][j]=std::max(f[i+1][j],f[i+1][j+1])+a[i][j];
  13. printf("%d\n",f[1][1]);
  14. }

著作权声明[编辑]

关于[编辑]