Submission #831493

#TimeUsernameProblemLanguageResultExecution timeMemory
831493caganyanmazSeats (IOI18_seats)C++17
11 / 100
1589 ms49860 KiB
#include <bits/stdc++.h> #include "seats.h" using namespace std; constexpr static int MXN = 1e4 + 5; constexpr static int INF = 1e6; vector<int> r, c; int mnr[MXN], mxr[MXN], mnc[MXN], mxc[MXN]; int h, w, n; int counter; void create_table() { counter = 0; mnr[0] = INF; mxr[0] = -INF; mnc[0] = INF; mxr[0] = -INF; for (int i = 1; i <= n; i++) { mnr[i] = min(mnr[i-1], r[i-1]); mxr[i] = max(mxr[i-1], r[i-1]+1); mnc[i] = min(mnc[i-1], c[i-1]); mxc[i] = max(mxc[i-1], c[i-1]+1); if ((mxr[i] - mnr[i]) * (mxc[i] - mnc[i]) == i) counter++; } } void give_initial_chart(int H, int W, vector<int> R, vector<int> C) { r = R, c = C; h = H, w = W; n = h*w; } int swap_seats(int a, int b) { swap(r[a], r[b]); swap(c[a], c[b]); create_table(); return counter; }
#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...