Submission #1201568

#TimeUsernameProblemLanguageResultExecution timeMemory
1201568UnforgettableplArt Collections (BOI22_art)C++20
100 / 100
761 ms496 KiB
#include "art.h" #include <bits/stdc++.h> using namespace std; void solve(int N) { vector<int> curr(N); iota(curr.begin(),curr.end(),1); int base = publish(curr); vector<int> holdings(10000,-1); holdings[5000]=1; for(int i=N;i>1;i--){ swap(curr[0],curr[i-1]); int mine = publish(curr)-base; swap(curr[0],curr[i-1]); int offset = (abs(mine)-1)/2 + 1; if(mine<0){ for(int x=5000;x;x--){ if(holdings[x]!=-1)continue; if((--offset)==0){ holdings[x]=i; break; } } } else { for(int x=5000;x;x++){ if(holdings[x]!=-1)continue; if((--offset)==0){ holdings[x]=i; break; } } } } curr.clear(); for(int i=0;i<10000;i++)if(holdings[i]!=-1)curr.emplace_back(holdings[i]); answer(curr); }
#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...