Submission #1320622

#TimeUsernameProblemLanguageResultExecution timeMemory
1320622mansurPrisoner Challenge (IOI22_prison)C++20
38 / 100
10 ms1724 KiB
#include "prison.h" #include <bits/stdc++.h> using namespace std; vector<vector<int>> devise_strategy(int N) { int k = 0; while ((1 << k) <= N) k++; k--; vector<vector<int>> ans(k * 3 + 3, vector<int> (N + 1)); for (int i = 0; i <= k * 3 + 2; i++) { if (i % 3 == 0) { ans[i][0] = 0; int b = k - i / 3; for (int j = 1; j <= N; j++) { if (j >> b & 1) ans[i][j] = (k - b) * 3 + 2; else ans[i][j] = (k - b) * 3 + 1; } continue; } int b = k - i / 3, v = i % 3; ans[i][0] = 1; for (int j = 1; j <= N; j++) { if (j >> b & 1) { if (v == 1) ans[i][j] = -1; else if (b) ans[i][j] = (k + 1 - b) * 3; }else { if (v == 2) ans[i][j] = -2; else if (b) ans[i][j] = (k + 1 - b) * 3; } } } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...