源代码:
#include<iostream>
using namespace std;
int a[100][100];
int d[100][100];
int n;
void figit()
{
int i,j;
for(j=1;j<=n;j++)
d[n][j]=a[n][j];
for(i=n-1;i>=1;i--)
for(j=1;j<=i;j++)
{
d[i][j]=a[i][j]+(d[i+1][j]>d[i+1][j+1]?d[i+1][j]:d[i+1][j+1]);
//cout<<d[i][j]<<endl;
}
}
int main()
{
int i,j;
while(cin>>n)
{
memset(a,0,sizeof(a));
memset(d,0,sizeof(d));
for(i=1;i<=n;i++)
for(j=1;j<=i;j++)
cin>>a[i][j];
/*for(i=1;i<=n;i++)
{
for(j=1;j<=i;j++)
cout<<a[i][j]<<" ";
cout<<endl;
}*/
figit();
cout<<d[1][1]<<endl;
}
}