Submission #786931

#TimeUsernameProblemLanguageResultExecution timeMemory
786931andrei_boacaPrisoner Challenge (IOI22_prison)C++17
0 / 100
10 ms1568 KiB
#include <bits/stdc++.h> #include "prison.h" //#include "grader.cpp" using namespace std; vector<vector<int>> sol; std::vector<std::vector<int>> devise_strategy(int N) { int n=N; for(int board=0;board<=55;board++) { vector<int> v; if(board==0) { v.push_back(0); int bit=13; int val=13*2; for(int i=1;i<=n;i++) { if((i>>(bit-1))&1) v.push_back(val+1); else v.push_back(val); } sol.push_back(v); continue; } int bit=0; for(int i=5;i>=2;i--) { int x=((board>>i)&1); bit=bit*2+x; } if(bit==0) { for(int i=1;i<=n+1;i++) v.push_back(0); sol.push_back(v); continue; } int who=((board>>1)&1); int bitval=board&1; if(who==0) { v.push_back(1); for(int i=1;i<=n;i++) { int x=((i>>(bit-1))&1); if(x<bitval) { v.push_back(-2); continue; } if(x>bitval) { v.push_back(-1); continue; } int val=(bit*2+1)*2+x; v.push_back(val); } sol.push_back(v); continue; } v.push_back(0); bit--; for(int i=1;i<=n;i++) { int x=((i>>(bit-1))&1); int val=bit*4+x; v.push_back(val); } sol.push_back(v); } return sol; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...