제출 #197219

#제출 시각아이디문제언어결과실행 시간메모리
197219_TimeLord_Maxcomp (info1cup18_maxcomp)C++17
0 / 100
467 ms504 KiB
#include <bits/stdc++.h>

using namespace std;
using namespace chrono;
/*
#pragma GCC optimize("Ofast")
#pragma GCC target("tune=native, sse, sse2, ssse3, sse4")
#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 main()
{
    ios_base::sync_with_stdio(0);
    cin.tie(0);
    auto st = steady_clock().now();
    int n, m;
    cin >> n >> m;
    vector<vector<int> > a(n, vector<int>(m));
    for(int i = 0; i < n; i++){
        for(int j = 0; j < m; j++)
            cin >> a[i][j];
    }

    ll time = 0;
    int ans = -1e9;
    while(1){
        int x = rnd(); x = abs(x); x %= n;
        int y = rnd(); y = abs(y); y %= m;
        int p1 = a[x][y];
        for(int i = 0; i < n; i++)
            for(int j = 0; j < n; j++){
                int p2 = a[i][j];
                ans = max(ans, max(p1, p2) - min(p1, p2) - abs(i - x) - abs(y - j));
            }

        auto en = steady_clock().now();
        time = duration_cast<milliseconds>(en - st).count();
        if(time >= 480)
            break;
    }
    cout << ans;

}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...