【数字三角形】

题目

代码

cpp 复制代码
#include <bits/stdc++.h>
using namespace std;

const int N = 510;
int f[N][N];
int a[N][N];
int main()
{
    int n;
    cin >> n;
    for(int i = 1; i <= n; i++)
    {
        for(int j = 1; j <= i; j++)
        {
            cin >> a[i][j];
            if(i == 1 && j == 1) f[i][j] = a[i][j];
            else f[i][j] = INT_MIN;
            if(j-1 >= 1) f[i][j] = max(f[i][j], f[i-1][j-1] + a[i][j]);
            if(j <= i-1) f[i][j] = max(f[i][j], f[i-1][j] + a[i][j]);
        }
    }

    int res = INT_MIN;
    for(int i = 1; i <= n; i++)
    {
        res = max(res, f[n][i]);
    }
    cout << res;
    return 0;
}
相关推荐
旖旎夜光1 小时前
【C++ 基础入门】C++ 多态(中):虚函数表、多态原理与动静绑定
开发语言·c++·笔记·学习
NEFU_Jyj1 小时前
贝尔数(组合数学)
算法
希和20272 小时前
C语言程序设计题|有序数组插入数字冒泡排序
c语言·数据结构·算法
旖旎夜光2 小时前
【C++ 基础入门】C++多态(下):单/多继承虚表、多态补充与 21 道高频题
开发语言·c++·笔记·学习
Pniubi2 小时前
力扣73 矩阵置零
算法·leetcode·矩阵
apcipot_rain12 小时前
C++转Java日记(03)
java·开发语言·c++
布莱克60512 小时前
C++ 中 map 的 insert 与 emplace:key 已存在时会覆盖吗?
开发语言·数据结构·c++·算法·map
xys_67813 小时前
深挖C++:类和对象(中)
开发语言·c++
D e re k ZH15 小时前
C++ 系统学习手记:从语法细节到工程实践
开发语言·数据结构·c++·算法