Submission #1018256

#TimeUsernameProblemLanguageResultExecution timeMemory
1018256vjudge1Seats (IOI18_seats)C++17
11 / 100
4069 ms48724 KiB
#include "seats.h"
#include <bits/stdc++.h>
using namespace std;
using ll = long long;
using vll = vector <ll>;
using vi = vector <int>;
using ii = pair <ll, ll>;

const ll MAXN = 1E6+16;
ii wh[MAXN];
ll n;

void give_initial_chart (int h, int w, vi r, vi c) {
    n = h*w;
    for (ll i = 0; i < n; i++) {
        wh[i] = ii{ r[i], c[i] };
    }
}

int swap_seats (int a, int b) {
    swap(wh[a], wh[b]);
    ll ans = 0;
    ll minI = wh[0].first, maxI = wh[0].first;
    ll minJ = wh[0].second, maxJ = wh[0].second;
    for (ll i = 0; i < n; i++) {
        minI = min(minI, wh[i].first);
        minJ = min(minJ, wh[i].second);
        maxI = max(maxI, wh[i].first);
        maxJ = max(maxJ, wh[i].second);
        ans += (maxI-minI+1)*(maxJ-minJ+1) == i+1;
    }
    return 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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...