Submission #1061461

# Submission time Handle Problem Language Result Execution time Memory
1061461 2024-08-16T09:19:05 Z amine_aroua Bit Shift Registers (IOI21_registers) C++17
23 / 100
2 ms 1044 KB
#include "registers.h"
#include<bits/stdc++.h>
using namespace std;
const int B = 2000;
const int fi = 5 , se = 6 , th = 7 , fo = 8;
const int full = 1 , one = 2 , x = 3 , y = 4 , extra = 9;
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);
	for(int j = 0 ; j < n - 1 ; j++)
	{
		for(int i = 1 ; i < n ; i++)
		{
			append_right(x , 0 , (i - 1)*k);
			append_and(x , x , full);
			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 , x);
			// 5 : d>>(B - 1)
			append_right(fi , fi , B - 1);
			for(int l = 1 ;l < k ; l++)
			{
				append_left(se , fi , 1);
				append_or(fi , fi , se);
			}
			append_xor(se , fi , full);
			append_move(th , se);
			append_move(fo , fi);
			append_and(th , th , x);
			append_and(fo , fo , y);
			
			append_and(fi , fi , x);
			append_and(se , se , y);

			append_or(x , fi , se);
			append_or(y , th , fo);
			append_left(x , x,(i - 1)*k);
			append_left(y , y , i * k);
			append_or(0 , 0 , x);
			append_or(0 , 0 , y);
			v.assign(B , 1);
			for(int l = (i - 1) * k  ; l < i * k ; l++)
			{
				v[l] = 0;
			}
			append_store(extra , v);
			append_or(x , x , extra);
			v.assign(B , 1);
			for(int l = i * k  ; l < (i+1) * k ; l++)
			{
				v[l] = 0;
			}
			append_store(extra , v);
			append_or(y , y , extra);
			append_and(0 , 0 , x);
			append_and(0 , 0 , y);
		}
	}
}
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 348 KB Wrong answer detected in grader
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
2 Incorrect 1 ms 788 KB Wrong answer detected in grader
3 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 0 ms 348 KB Wrong answer detected in grader
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Correct 2 ms 1044 KB Output is correct
2 Correct 2 ms 664 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 2 ms 1044 KB Output is correct
2 Correct 2 ms 664 KB Output is correct
3 Incorrect 1 ms 788 KB Wrong answer detected in grader
4 Halted 0 ms 0 KB -