Submission #1082371

# Submission time Handle Problem Language Result Execution time Memory
1082371 2024-08-31T08:27:58 Z Cyanberry Bit Shift Registers (IOI21_registers) C++17
33 / 100
3 ms 860 KB
#include "registers.h"
#include <bits/stdc++.h>
using namespace std;

void compare(int al, int ar, int bl, int br) {
	vector<bool> anding(2000, false);
	for (int i = al; i < ar; ++i) {
		anding[i] = true;
	}
	append_store(1, anding);
	for (int i = al; i < ar; ++i) {
		anding[i] = false;
	}
	for (int i = bl; i < br; ++i) {
		anding[i] = true;
	}
	append_store(2, anding);
	append_and(1, 0, 1);
	append_and(2, 0, 2);
	append_right(1, 1, al);
	append_right(2, 2, bl);
	append_not(3, 1);
	append_add(3, 2, 3);
	append_not(4, 2);
	append_add(4, 1, 4);
	append_right(3, 3, 1000);
	append_right(4, 4, 1000);
	append_and(3, 2, 3);
	append_and(4, 1, 4);
}

void setMin(int al, int ar) {
	int bl = 0, br = ar - al;
	vector<bool> anding(2000, false);
	for (int i = al; i < ar; ++i) {
		anding[i] = true;
	}
	append_store(1, anding);
	for (int i = al; i < ar; ++i) {
		anding[i] = false;
	}
	append_and(1, 0, 1);
	append_right(1, 1, al);
	append_not(3, 1);
	append_not(4, 99);
	append_add(3, 99, 3);
	append_add(4, 1, 4);
	append_right(3, 3, 1000);
	append_right(4, 4, 1000);
	append_and(3, 99, 3);
	append_and(4, 1, 4);
	append_store(99, anding);
	append_or(99, 99, 3);
	append_or(99, 99, 4);
}

void construct_instructions(int s, int n, int k, int q) {
	vector<bool> anding(2000, false);
	if (s == 0) {
		for (int i = 0; i < k; ++i) {
			anding[i] = true;
		}
		append_store(99, anding);
		append_and(99, 0, 99);
		for (int i = 1; i < n; ++i) {
			setMin(i * k, i * k + k);
		}
		append_move(0, 99);
	} else {

	}
}

Compilation message

registers.cpp: In function 'void setMin(int, int)':
registers.cpp:33:6: warning: unused variable 'bl' [-Wunused-variable]
   33 |  int bl = 0, br = ar - al;
      |      ^~
registers.cpp:33:14: warning: unused variable 'br' [-Wunused-variable]
   33 |  int bl = 0, br = ar - al;
      |              ^~
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 344 KB Output is correct
# Verdict Execution time Memory Grader output
1 Correct 1 ms 348 KB Output is correct
2 Correct 2 ms 860 KB Output is correct
3 Correct 3 ms 856 KB Output is correct
4 Correct 3 ms 860 KB Output is correct
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 344 KB Wrong answer detected in grader
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB Incorrect sorting
2 Halted 0 ms 0 KB -
# Verdict Execution time Memory Grader output
1 Incorrect 1 ms 348 KB Incorrect sorting
2 Halted 0 ms 0 KB -