Submission #1228692

#TimeUsernameProblemLanguageResultExecution timeMemory
1228692MarwenElarbiCoreputer (IOI23_coreputer)C++20
0 / 100
0 ms408 KiB
#include "coreputer.h" #include <bits/stdc++.h> using namespace std; std::vector<int> malfunctioning_cores(int N) { int l=-1; int r=N; bool lst=false; vector<int> ans; while(r-l>1){ int mid=(r+l)/2; vector<int> cur; for (int i = 0; i <= mid; ++i) { cur.push_back(i); } int cnt=run_diagnostic(cur); lst|=(cnt==0); if(cnt<=0) l=mid; else r=mid; } if(lst==1){ ans.push_back(r); for (int i = r+1; i < N; ++i) { vector<int> cur; cur.push_back(i); for (int j = 0; j <= l; ++j) { cur.push_back(j); } if(run_diagnostic(cur)==1) ans.push_back(i); } int half=ans.size(); for (int i = 0; i < l; ++i) { vector<int> cur; for (int j = 0; j < half; ++j) { cur.push_back(ans[j]); } cur.push_back(i); if(run_diagnostic(cur)>0) ans.push_back(i); } if(ans.size()%2) ans.push_back(l); sort(ans.begin(),ans.end()); return ans; }else{ ans.push_back(r); for (int i = r+1; i < N; ++i) { vector<int> cur; cur.push_back(i); for (int j = 0; j <= l; ++j) { cur.push_back(j); } if(run_diagnostic(cur)==1) ans.push_back(i); } int half=ans.size()-1; for (int i = 0; i < l; ++i) { vector<int> cur; for (int j = 0; j < half; ++j) { cur.push_back(ans[j]); } cur.push_back(i); if(run_diagnostic(cur)>0) ans.push_back(i); } if(ans.size()%2==0) ans.push_back(l); sort(ans.begin(),ans.end()); return ans; } }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...