动态规划入门
状态转移方程 dp[i][j]=max(dp[i+1][j],dp[i+1][j+1])+v[i][j]
#include<bits/stdc++.h>
using namespace std;
int a[120][120],dp[120][120];
int main()
{
int C,N;
scanf("%d",&C);
for(int i=1;i<=C;i++)
{
scanf("%d",&N);
for(int j=1;j<=N;j++)
for(int k=1;k<=j;k++)
scanf("%d",&a[j][k]);
for(int j=N;j>=1;j--)
for(int k=1;k<=j;k++)
dp[j][k]=max(dp[j+1][k],dp[j+1][k+1])+a[j][k];
printf("%d\n",dp[1][1]);
}
return 0;
}