Submission #1061350

#TimeUsernameProblemLanguageResultExecution timeMemory
1061350amine_arouaBit Shift Registers (IOI21_registers)C++17
33 / 100
1 ms692 KiB
#include "registers.h"
#include<bits/stdc++.h>
using namespace std;
const int B = 2000;
const int fi = 5 , se = 6;
const int full = 1 , one = 2 , mn = 3 , y = 4; 
void construct_instructions(int s, int n, int k, int q) 
{
	vector<bool> v(2000);
	for(int i = 0 ; i < k ;i++)
		v[i] = 1;
	append_store(full , v);
	v.assign(2000 , 0);
	v[0] = 1;
	append_store(one , v);
	append_and(mn , full , 0);
	for(int i = 1 ; i < n ; i++)
	{
		append_right(y , 0 , i*k);
		append_and(y , y , full);
		// 4 : y
		append_not(fi , y);
		append_add(fi , fi , one);
		append_add(fi , fi , mn);
		// 5 : d>>(B - 1)
		append_right(fi , fi , B - 1);
		for(int i = 1 ;i < k ; i++)
		{
			append_left(se , fi , 1);
			append_or(fi , fi , se);
		}
		append_xor(se , fi , full);
		append_and(fi , fi , mn);
		append_and(se , se , y);
		append_or(mn , fi , se);
	}
	append_move(0 , mn);
}
#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...