数字三角形-dp
重点
1. f[i][j] : 表示从下往上走,到达i,j点的所有路径的集合,属性是最大值
#include <iostream>
#include <cstring>
#include <algorithm>
using namespace std;
const int N = 510;
int f[N][N];
int n;
int main() {
cin >> n;
for (int i = 1; i <= n; i++) {
for (int j = 1; j <= i; j++) {
cin >> f[i][j];
}
}
for (int i = n; i >= 1; i--) {
for (int j = 1; j <= i; j++) {
f[i][j] += max(f[i + 1][j], f[i + 1][j + 1]);
}
}
cout << f[1][1] << endl;
return 0;
}