Submission #1286354

#TimeUsernameProblemLanguageResultExecution timeMemory
1286354mihajlo0404Maxcomp (info1cup18_maxcomp)C++20
60 / 100
1095 ms14648 KiB
#include <bits/stdc++.h> using namespace std; typedef long long ll; ll mod = 1e9 + 7; ll inf = 2000000000; int main() { ll n, m; cin >> n >> m; vector<vector<ll>>matrica(n, vector<ll>(m)); vector<pair<ll, ll>>veci; vector<pair<ll, ll>>manji; ll maks = 0, mini = inf; for (ll i = 0; i < n; i++) { for (ll j = 0; j < m; j++) { cin >> matrica[i][j]; maks = max(maks, matrica[i][j]); mini = min(mini, matrica[i][j]); } } ll res = -1; for (ll i = 0; i < n; i++) { for (ll j = 0; j < m; j++) { if (matrica[i][j] == mini) { manji.push_back({i, j}); } if (matrica[i][j] == maks) { manji.push_back({i, j}); } bool imaveci = false, imamanji = false; if (i > 0) { if (matrica[i - 1][j] >= matrica[i][j]) { imaveci = true; } else if (matrica[i - 1][j] <= matrica[i][j]) { imamanji = true; } } if (i < (n - 1)) { if (matrica[i + 1][j] >= matrica[i][j]) { imaveci = true; } else if (matrica[i + 1][j] <= matrica[i][j]) { imamanji = true; } } if (j > 0) { if (matrica[i][j - 1] >= matrica[i][j]) { imaveci = true; } else if (matrica[i][j - 1] <= matrica[i][j]) { imamanji = true; } } if (j < (m - 1)) { if (matrica[i][j + 1] >= matrica[i][j]) { imaveci = true; } else if (matrica[i][j + 1] <= matrica[i][j]) { imamanji = true; } } if (!imaveci) { veci.push_back({i, j}); } if (!imamanji) { manji.push_back({i, j}); } } } for (ll i = 0; i < veci.size(); i++) { for (ll j = 0; j < manji.size(); j++) { ll x1 = veci[i].first, y1 = veci[i].second, x2 = manji[j].first, y2 = manji[j].second; res = max(res, matrica[x1][y1] - matrica[x2][y2] - abs(x1 - x2) - abs(y1 - y2) - 1); } } cout << res << endl; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...