Submission #1230822

#TimeUsernameProblemLanguageResultExecution timeMemory
1230822rxlfd314Bit Shift Registers (IOI21_registers)C++20
21 / 100
0 ms328 KiB
#include "registers.h" #include <bits/stdc++.h> using namespace std; using ll = long long; using ari2 = array<int, 2>; using ari3 = array<int, 3>; using arl2 = array<ll, 2>; using arl3 = array<ll, 3>; template <class T> using vt = vector<T>; #define all(x) begin(x), end(x) #define size(x) (int((x).size())) #define REP(a,b,c,d) for(int a=(b);(d)>0?a<=(c):a>=(c);a+=(d)) #define FOR(a,b,c) REP(a,b,c,1) #define ROF(a,b,c) REP(a,b,c,-1) constexpr int M = 100, B = 2000; void construct_instructions(int s, int n, int k, int q) { if (s || n != 2 || k > 2) return; if (k == 1) { append_move(1, 0); append_right(0, 0, 1); append_left(1, 1, B-1); append_right(1, 1, B-1); append_and(0, 0, 1); return; } append_move(1, 0); append_move(2, 0); append_move(3, 0); append_right(0, 0, 3); append_left(1, 1, B-3); append_right(1, 1, B-1); append_left(2, 2, B-2); append_right(2, 2, B-1); append_left(3, 3, B-1); append_right(3, 3, B-1); #ifdef DEBUG append_print(0); append_print(1); append_print(2); append_print(3); #endif append_or(4, 0, 1); append_or(5, 2, 3); append_xor(6, 0, 2); append_and(7, 1, 3); append_and(8, 0, 2); append_left(8, 8, 1); append_or(0, 6, 7); append_and(0, 0, 4); append_and(0, 0, 5); append_or(0, 0, 8); }
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...
#Verdict Execution timeMemoryGrader output
Fetching results...