제출 #1140308

#제출 시각아이디문제언어결과실행 시간메모리
1140308MaaxlePrisoner Challenge (IOI22_prison)C++20
30 / 100
16 ms2120 KiB
#include <bits/stdc++.h> #include "prison.h" #define range(it, a, b) for (ll it = a; it < b; it++) #define invr(it, a, b) for (ll it = a; it >= b; it--) #define all(x) begin(x), end(x) #define ll long long #define ull unsigned long long #define ld long double #define INF64 ((ll) 1 << 62) #define INF32 (1 << 30) #define mset multiset #define uset unordered_set #define umap unordered_map #define pqueue priority_queue #define ptr(A) shared_ptr<A> #define v(x) vector<x> using namespace std; v(v(int)) devise_strategy(int N) { v(v(int)) ans (60, v(int)(N+1)); range(b, 0, 13) { range(s, 0, 3) { range(j, 1, N+1) { int i = (s << 4) + b; int rb = 12 - b; ans[i][0] = (s > 0); // A IS ALREADY CHECKED if (s > 0) { bool bb = ((j & (1 << rb)) > 0); bool ab = (s == 2); if (ab != bb) ans[i][j] = (bb ? -1 : -2); else ans[i][j] = b+1; continue; } // CHECK A bool ab = ((j & (1 << rb)) > 0); int ns = (ab ? 2 : 1); ans[i][j] = (ns << 4) + b; } } } return ans; }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...