Submission #1059533

#TimeUsernameProblemLanguageResultExecution timeMemory
1059533LittleOrangeBit Shift Registers (IOI21_registers)C++17
21 / 100
1 ms348 KiB
#include "registers.h" #include<bits/stdc++.h> using namespace std; using ll = int; const ll m = 100, b = 2000; void construct_instructions(int s, int n, int k, int q) { auto get_num = [&](ll t, ll x, ll i){ append_left(t,x,b-(i+1)*k); append_right(t,t,b-k); //append_print(t); }; if (s==0){ get_num(1,0,0); vector<bool> one(b,0); one[0] = true; append_store(m-1,one); auto neg = [&](ll t, ll x){ append_not(t,x); append_add(t,t,m-1); }; auto abs = [&](ll t, ll x, ll tmp){ neg(t,x); append_right(tmp,x,b-k); append_and(tmp,t,tmp); append_not(t,x); append_right(t,t,b-k); append_and(t,t,x); append_add(t,t,tmp); }; auto uabs = [&](ll t, ll x, ll tmp){ neg(t,x); append_not(tmp,x); append_right(tmp,tmp,b-k*2); append_and(tmp,t,tmp); append_right(t,x,b-k*2); append_and(t,t,x); append_add(t,t,tmp); }; for(ll i = 1;i<n;i++){ get_num(2,0,i); neg(3,2); append_add(3,1,3); uabs(4,3,5); //append_print(4); //append_print(4); append_add(3,1,2); //append_print(3); append_add(3,3,4); //append_print(3); append_right(i+1<n,3,1); } } }

Compilation message (stderr)

registers.cpp: In function 'void construct_instructions(int, int, int, int)':
registers.cpp:22:8: warning: variable 'abs' set but not used [-Wunused-but-set-variable]
   22 |   auto abs = [&](ll t, ll x, ll tmp){
      |        ^~~
#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...