제출 #197247

#제출 시각아이디문제언어결과실행 시간메모리
197247_TimeLord_Maxcomp (info1cup18_maxcomp)C++14
60 / 100
568 ms4328 KiB
#include <bits/stdc++.h> using namespace std; using namespace chrono; #pragma GCC optimize("Ofast") #pragma GCC target("tune=native") #pragma GCC optimize("unroll-loops") typedef long long ll; typedef long double ld; #define fs first #define sc second #define all(x) x.begin(), x.end() #define rall(x) x.rbegin(), x.rend() #define pii pair<int, int> #define pll pair<ll, ll> #define pb push_back #define maxn 200000 #define BIG 1000000000000000000 mt19937 rnd(42); int a[1000][1000]; int main() { ios_base::sync_with_stdio(0); cin.tie(0); int n, m; cin >> n >> m; for(int i = 0; i < n; i++){ for(int j = 0; j < m; j++) cin >> a[i][j]; } int ans = -1e9; for(int i = 0; i < 90; i++){ int bx = abs(int(rnd()))%n; int by = abs(int(rnd()))%m; for(int o = 0; o < 10; o++){ int x = -1, y; for(int i = 0; i < n; i++) for(int j = 0; j < m; j++){ int p = max(a[bx][by], a[i][j]) - min(a[bx][by], a[i][j]) - 1 - abs(i - bx) - abs(by - j); if(p >= ans){ x = i; y = j; } ans = max(ans, p); } if(x == -1) break; bx = x; by = y; } } cout << ans; } /* 2 3 3 4 2 5 7 5 */
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...