以下为代码
#include<iostream>
#include<algorithm>
#include<cstring>
using namespace std;
int main() {
int n;
int a, b, c;
int w[15][15];
int h[15][15][15][15];
cin >> n >> a >> b >> c;
while (a != 0 || b != 0 || c != 0) {
w[a][b] = c;
cin >> a >> b >> c;
}
for(int i = 1;i <= n; i++) for(int j = 1;j <= n; j++) for(int k = 1; k <= n; k++) for(int l = 1;l <= n; l++) {
h[i][j][k][l] = max(max(h[i - 1][j][k - 1][l], h[i][j - 1][k][l - 1]),max(h[i - 1][j][k][l - 1], h[i][j - 1][k - 1][l])) + w[i][j] + w[k][l];;
if(i == k && l == j) h[i][j][k][l] -= w[i][j];
}
cout << h[n][n][n][n];
return 0;
}