没什么好说的,这是我学DP的第一道题目。
//#define LOCAL
#include <iostream>
#include <cstdio>
#include <cstring>
#include <algorithm>
using namespace std; int a[][]; int main(void)
{
#ifdef LOCAL
freopen("2084in.txt", "r", stdin);
#endif int C;
scanf("%d", &C);
while(C--)
{
int n;
scanf("%d", &n);
int i, j;
for(i = ; i <= n; ++i)
for(j = ; j <= i; ++j)
scanf("%d", &a[i][j]); for(i = n-; i >= ; --i)
for(j = ; j <= i; ++j)
a[i][j] += max(a[i+][j], a[i+][j+]); printf("%d\n", a[][]);
}
return ;
}
代码君