ans

DOZIE 2022-06-25 15:27:55 10 返回题目

#include <bits/stdc++.h> #define maxn 55 using namespace std; int x[maxn][maxn][maxn][maxn],a[maxn][maxn]; int n , m; int max_ele(int a,int b,int c,int d){ if (b > a) a = b; if (c > a) a = c; if (d > a) a = d; return a; } int main(){ cin >> n >> m; for (int i = 1 ; i <= n ; i++) for (int j = 1 ; j <= m ; j++) cin >> a[i][j]; for (int i = 1 ; i <= n ; i++) for (int j = 1 ; j <= m ; j++) for (int k = 1 ; k <= n ; k++) for (int l = j + 1 ; l <= m ; l++) x[i][j][k][l] = max_ele(x[i][j - 1][k - 1][l] , x[i - 1][j][k][l - 1] , x[i][j - 1][k][l - 1] , x[i - 1][j][k - 1][l]) + a[i][j] + a[k][l]; cout << x[n][m - 1][n - 1][m] << endl; return 0; }

{{ vote && vote.total.up }}