#include<bits/stdc++.h>
using namespace std;
int n,x,y;
int a[1005][1005],m[1005][1005];
int dfs(int i,int j)
{
if(m[i][j]>0)
return m[i][j];
if(i==n)
return a[i][j];
x=dfs(i+1,j);
y=dfs(i+1,j+1);
m[i][j]=max(x,y)+a[i][j];
return m[i][j];
}
int main()
{
cin>>n;
for(int i=1;i<=n;++i)
for(int j=1;j<=i;++j)
cin>>a[i][j];
cout<<dfs(0,0);
return 0;
}