Submission #1082055

#TimeUsernameProblemLanguageResultExecution timeMemory
1082055nikdA Light Inconvenience (CEOI23_light)C++17
100 / 100
478 ms820 KiB
#include <bits/stdc++.h> #define ll long long using namespace std; vector<ll> f; ll n; void prepare(){ n =1; f ={1}; } pair<long long, vector<long long>> join(long long p){ n+=p; vector<ll> sol = {n}; ll temp = n; while(temp>1){ temp -= min(temp-1, n-temp+2); ll i = upper_bound(f.begin(), f.end(), temp)-f.begin()-1; if(temp-f[i]>p){ temp = f[i+1]; } sol.insert(sol.begin(), temp); } swap(sol, f); return {p, f}; } pair<long long, vector<long long>> leave(long long p){ n-=p; vector<ll> sol = {n}; ll temp = n; while(temp>1){ temp -= min(temp-1, n-temp+2); ll i = upper_bound(f.begin(), f.end(), temp)-f.begin()-1; if(temp-f[i]>p){ temp = f[i+1]; } sol.insert(sol.begin(), temp); } swap(sol, f); return {p, f}; }
#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...