1 #include<iostream>
2 using namespace std;
3 #include<cstdio>
4 int n;
5 int num[66][66];
6 int f[66][66];
7 int pre[66][66];
8 int main()
9 {
10 cin>>n;
11 for(int i=1;i<=n;++i)
12 {
13 for(int j=1;j<=i;++j)
14 {
15 scanf("%d",&num[i][j]);
16 if(i==n)f[i][j]=num[i][j];
17 }
18 }
19 for(int i=(n-1);i>=1;--i)
20 {
21 for(int j=1;j<=(i+1);++j)
22 {
23 if(f[i+1][j]>f[i+1][j+1])
24 {
25 pre[i][j]=j;
26 f[i][j]=f[i+1][j]+num[i][j];
27 }
28 else
29 {
30 pre[i][j]=j+1;
31 f[i][j]=f[i+1][j+1]+num[i][j];
32 }
33 }
34 }
35 cout<<f[1][1]<<endl<<num[1][1];
36 int k=1,h=1;
37 while(pre[k][h])
38 {
39 h=pre[k][h];
40 ++k;
41 cout<<"-"<<num[k][h];
42 }
43 return 0;
44 }