Submission #130320

#TimeUsernameProblemLanguageResultExecution timeMemory
130320ShushSeats (IOI18_seats)C++17
11 / 100
4033 ms40824 KiB
#include <bits/stdc++.h> #include "seats.h" using namespace std; typedef long long ll; int h, w, mxr = 0, mnr = 1e9, mxc = 0, mnc = 1e9; vector<int> r, c; void rst(){ mxr = 0, mnr = 1e9, mxc = 0, mnc = 1e9; } void swr(int a, int b){ int x = r[a]; r[a] = r[b]; r[b] = x; } void swc(int a, int b){ int x = c[a]; c[a] = c[b]; c[b] = x; } void give_initial_chart(int H, int W, std::vector<int> R, std::vector<int> C) { h = H; w = W; r = R; c = C; for(int i = 0; i < h*w; i++){ c[i]++; r[i]++; } } int swap_seats(int a, int b) { ll res = 0; swr(a, b); swc(a, b); rst(); for(int i = 0; i < h*w; i++){ if(mxr < r[i]) mxr = r[i]; if(mnr > r[i]) mnr = r[i]; if(mxc < c[i]) mxc = c[i]; if(mnc > c[i]) mnc = c[i]; int hi = (mxr - mnr) + 1, wi = (mxc - mnc) + 1; if(hi < 1) hi = 1; if(wi < 1) wi = 1; if(hi*wi - 1 == i) res++; } return res; }
#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...