Submission #120842

#TimeUsernameProblemLanguageResultExecution timeMemory
120842faustaadpSeats (IOI18_seats)C++17
5 / 100
4098 ms47608 KiB
#include "seats.h" #include<bits/stdc++.h> typedef long long ll; #define pb push_back #define mp make_pair #define fi first #define se second using namespace std; ll x[2][1010101],n,i,j; void give_initial_chart(int H, int W, std::vector<int> R, std::vector<int> C) { for(i=0;i<H*W;i++) { x[0][i]=R[i]; x[1][i]=C[i]; } n=H*W; } ll quemi(ll ff,ll aa,ll bb) { ll ii,H=1e18; for(ii=aa;ii<=bb;ii++) H=min(H,x[ff][ii]); return H; } ll quema(ll ff,ll aa,ll bb) { ll ii,H=-1e18; for(ii=aa;ii<=bb;ii++) H=max(H,x[ff][ii]); return H; } int swap_seats(int a, int b) { swap(x[1][a],x[1][b]); swap(x[0][a],x[0][b]); ll hz=0; //cout<<"A"; //return 0; for(i=0;i<n;i++) { ll mx=quemi(0,0,i); ll my=quemi(1,0,i); ll Mx=quema(0,0,i); ll My=quema(1,0,i); ll tem=(Mx-mx+1)*(My-my+1); // cout<<i<<" "<<mx<<" "<<my<<" "<<Mx<<" "<<My<<"_ _ _"<<tem<<"\n"; if(i+1==tem) { // cout<<i<<"_\n"; hz++; } i=max(i,tem-2); } return hz; }
#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...