package blueBridge;
import java.math.BigInteger;
import java.util.*;
public class testOne {
/*
* 题目
数字三角形,从顶部到底部经过数字之最大的路径
输入:
5
7
3 8
8 1 0
2 7 4 4
4 5 2 6 5
输出:
30
* */
public static void main(String[] args) {
int[][] f=new int[510][510];
int res=0;
Scanner sc=new Scanner(System.in);
int n=sc.nextInt();
for(int i=0;i<=n;i++) {
for(int j=0;j<=n;j++) {
f[i][j]=0;
}
}
for(int i=1;i<=n;i++) {
for(int j=1;j<=i;j++) {
f[i][j]=sc.nextInt();
}
}
for(int i=2;i<=n;i++) {
for(int j=1;j<=i;j++) {
f[i][j]+=Math.max(f[i-1][j],f[i-1][j-1]);
if(i==n)
res=Math.max(res, f[i][j]);
}
}
System.out.println(res);
}
}