제출 #1208503

#제출 시각아이디문제언어결과실행 시간메모리
1208503asli_bgA Light Inconvenience (CEOI23_light)C++20
0 / 100
1112 ms1114112 KiB
#include <bits/stdc++.h> using namespace std; #include <ext/pb_ds/assoc_container.hpp> using namespace __gnu_pbds; #include "light.h" #define int long long typedef pair<int,int> pii; typedef vector<int> vi; typedef vector<pii> vii; typedef vector<bool> vb; typedef long long ll; typedef pair<ll,ll> pll; typedef vector<pll> vll; typedef tree<pii,null_type,less<pii>,rb_tree_tag, tree_order_statistics_node_update> oset; #define fi first #define se second #define pb push_back #define pf push_front #define mid (l+r)/2 #define all(x) x.begin(),x.end() #define FOR(i,a) for(int i=0;i<(a);i++) #define FORE(i,a,b) for(int i=(a);i<(b);i++) #define cont(x) for(auto el:x) cout<<el<<' ';cout<<endl; #define contp(x) for(auto el:x) cout<<el.fi<<'-'<<el.se<<' ';cout<<endl; #define sp <<" "<< #define DEBUG(x) cout<<(#x) sp x<<endl #define carp(a,b) (((a%MOD)*(b%MOD))%MOD) #define topla(a,b) (((a%MOD)+(b%MOD))%MOD) const ll INF=1e18; const int MAXN=1e6+5; const int MOD=1e9+7; vi vec; int say; void prepare(){ say=1; vec.pb(1); } pair<int,vi> join(int p){ //cout<<"join" sp p<<endl; int tut=p; int sz=vec.size(); p--; while(p--) vec.pb(0); vec.pb(1); say++; if(say>150){ FOR(i,sz){ if(say<=150) break; if(vec[i]==0) continue; vec[i]=0; say--; } } else{ sz=vec.size(); FOR(i,sz){ if(say+1>150) break; if(vec[i]==0) continue; vec[i]=1; say++; } } vi res; FOR(i,vec.size()){ if(vec[i]) res.pb(i+1); } return {tut, res}; } pair<int,vi> leave(int p){ //cout<<"leave" sp p<<endl; int tut=p; while(p--){ if(vec.back()==1) say--; vec.pop_back(); } int sz=vec.size(); if(vec[sz-1]!=1){ vec[sz-1]=1; say++; } if(say>150){ FOR(i,sz){ if(say<=150) break; if(vec[i]==0) continue; vec[i]=0; say--; } } else{ sz=vec.size(); FOR(i,sz){ if(say+1>150) break; if(vec[i]==0) continue; vec[i]=1; say++; } } vi res; FOR(i,vec.size()){ if(vec[i]) res.pb(i+1); } return {tut, 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...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...