Submission #1320042

#TimeUsernameProblemLanguageResultExecution timeMemory
1320042brianabcrMaxcomp (info1cup18_maxcomp)C++20
100 / 100
298 ms39608 KiB
#include <bits/stdc++.h> #define int long long using namespace std; int n, m, v[1005][1005], dp[1005][1005][4]; signed main () { cin >> n >> m;; for (int i = 1; i <= n; i++) for (int j = 1; j <= m; j++) cin >> v[i][j]; for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) dp[i][j][0] = max(max(dp[i - 1][j][0], dp[i][j - 1][0]), v[i][j]) - 1; for (int j = m; j >= 1; j--) dp[i][j][1] = max(max(dp[i - 1][j][1], dp[i][j + 1][1]), v[i][j]) - 1; } for (int i = n; i >= 1; i--) { for (int j = 1; j <= m; j++) dp[i][j][2] = max(max(dp[i + 1][j][2], dp[i][j - 1][2]), v[i][j]) - 1; for (int j = m; j >= 1; j--) dp[i][j][3] = max(max(dp[i + 1][j][3], dp[i][j + 1][3]), v[i][j]) - 1; } int rez = LLONG_MIN; for (int i = 1; i <= n; i++) { for (int j = 1; j <= m; j++) { for (int k = 0; k < 4; k++) rez = max(rez, dp[i][j][k] - v[i][j]); } } cout << rez; return 0; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...