Submission #563920

#TimeUsernameProblemLanguageResultExecution timeMemory
563920kartelBit Shift Registers (IOI21_registers)C++17
21 / 100
1 ms212 KiB
#include <bits/stdc++.h>
//#include "grader.cpp"
#include "registers.h"
using namespace std;

void construct_instructions(int s, int n, int k, int q) {
    append_move(1, 0); /// get a
    append_move(2, 0); /// get b
    append_print(1);
    append_right(2, 2, k);
    append_move(3, 2);
    vector <bool> one = {1};
    while ((int)one.size() < 2000) {
        one.push_back(0);
    }

    /// get -b
    append_store(4, one);
    append_not(3, 3);
    append_add(3, 3, 4);
    one = {1, 1};
    while ((int)one.size() < 2000) {
        one.push_back(0);
    }
    append_store(4, one);
//    append_and(3, 3, 4);
    append_and(1, 1, 4);
//    append_print(3);

    ///get a-b
    append_add(1, 1, 3);
    append_move(3, 1);

    /// get if a <= b then register have -1 else 0
    append_right(3, 3, k);

    append_and(1, 1, 3);
    append_add(1, 1, 2);
    append_move(0, 1);
}
#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...