This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include "seats.h"
#include <bits/stdc++.h>
#define fi first
#define se second
#define lo long long
#define inf 1000000009
#define md 1000000007
#define li 200005
#define mp make_pair
#define pb push_back
#define mid (start+end)/2
using namespace std;
int A[105][105],n,m;
pair<int,int> konum[10005];
vector<int> rg,cg;
void give_initial_chart(int H,int W,vector<int> R,vector<int> C){
n=H;
m=W;
for(int i=0;i<H*W;i++){
int sat=R[i];
int sut=C[i];
A[sat][sut]=i;
konum[i]=mp(sat,sut);
}
//~ for(int i=0;i<n;i++){
//~ for(int j=0;j<m;j++){
//~ printf("%d ",A[i][j]);
//~ }
//~ printf("\n");
//~ }
}
int swap_seats(int a,int b){
int cev=0;
int sat1=konum[a].fi,sut1=konum[a].se;
int sat2=konum[b].fi,sut2=konum[b].se;
int temp=A[sat1][sut1];
konum[temp]=mp(sat2,sut2);
konum[b]=mp(sat1,sut1);
A[sat1][sut1]=A[sat2][sut2];
A[sat2][sut2]=temp;
//~ for(int i=0;i<n;i++){
//~ for(int j=0;j<m;j++){
//~ printf("%d ",A[i][j]);
//~ }
//~ printf("\n");
//~ }
int sifs=konum[0].fi,sifsu=konum[0].se;
//cout<<"debug- > :: :: >> :: "<<sifs<<' '<<sifsu<<endl;
for(int i=0;i<n;i++){
for(int j=0;j<m;j++){
int mx=(abs(i-sifs)+1)*(abs(j-sifsu)+1)-1;
int flag=0;
for(int k=min(i,sifs);k<=max(sifs,i);k++){
for(int t=min(j,sifsu);t<=max(j,sifsu);t++){
if(A[k][t]>mx){
flag=1;
break;
}
}
if(flag==1) break;
}
if(flag==0) cev++;
}
}
return cev;
}
//~ int main(){
//~ rg.pb(0),rg.pb(1),rg.pb(1),rg.pb(0),rg.pb(0),rg.pb(1);
//~ cg.pb(0),cg.pb(0),cg.pb(1),cg.pb(1),cg.pb(2),cg.pb(2);
//~ give_initial_chart(2,3,rg,cg);
//~ int ty=swap_seats(0,5);
//~ ty=swap_seats(0,5);
//~ printf("%d\n",ty);
//~ return 0;
//~ }
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|
Fetching results... |