摘要

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

题意

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

题解

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

代码

1220.cpp代码已折叠
展开折叠内容
#include<cstdio>
#include<algorithm>
int f[200][200],m,a[200][200];
int main()
{
    scanf("%d",&m);
    for(int i=1;i<=m;++i)
        for(int j=1;j<=i;++j)
            scanf("%d",&a[i][j]);
    for(int i=m;i>=1;--i)
        for(int j=1;j<=i;++j)
            f[i][j]=std::max(f[i+1][j],f[i+1][j+1])+a[i][j];
    printf("%d\n",f[1][1]);
}

著作权声明[编辑]

关于[编辑]