4 #define max(p,q) ((p)>(q)?(p):(q))
6 int a
[maxn
][maxn
],f
[maxn
][maxn
][maxn
][maxn
]={0};
13 scanf("%d%d%d",&x
,&y
,&value
);
14 while ((x
!=0) && (y
!=0) && (value
!=0))
17 scanf("%d%d%d",&x
,&y
,&value
);
20 f
[1][1][1][1]=a
[1][1];
25 if (!(i
==p
&& j
==q
) || (i
==n
&& j
==n
))
27 f
[i
][j
][p
][q
]=max(f
[i
-1][j
][p
][q
-1],f
[i
][j
][p
][q
]);
28 f
[i
][j
][p
][q
]=max(f
[i
-1][j
][p
-1][q
],f
[i
][j
][p
][q
]);
29 f
[i
][j
][p
][q
]=max(f
[i
][j
-1][p
-1][q
],f
[i
][j
][p
][q
]);
30 f
[i
][j
][p
][q
]=max(f
[i
][j
-1][p
][q
-1],f
[i
][j
][p
][q
]);
31 f
[i
][j
][p
][q
]+=a
[i
][j
]+a
[p
][q
];
33 printf("%d\n",f
[n
][n
][n
][n
]-a
[n
][n
]);