Submission #1358490

#TimeUsernameProblemLanguageResultExecution timeMemory
1358490lyra_g13Prisoner Challenge (IOI22_prison)C++20
0 / 100
0 ms344 KiB
#include "prison.h"
#include <bits/stdc++.h>
using ll = long long;
using namespace std;

std::vector<std::vector<int>> devise_strategy(int n) {

  vector<vector<int>> a(3*13, vector<int>(n + 1));

  for (int i = 0; i < 3*13; i++) {
    ll c = i / 3;
    ll num = i % 3;
    ll bit = 12 - c;

    a[i][0] = (num == 0) ? 0 : 1;

    for (int j = 1; j <= n; j++) {
      ll bbit = ((j & (1 << bit)) ? 1 : 0);
      if (num == 0)
        a[i][j] = 3 * c + 1 + bbit;
      else if (num == 1)
        a[i][j] = (bbit == 1) ? -1 : 3 * ((i + 2)/3);
      else
        a[i][j] = (bbit == 0) ? -2 : 3 * ((i+1)/3);
    }
  }

  return a;
}
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...