# | TimeUTC-0 | Username | Problem | Language | Result | Execution time | Memory |
---|---|---|---|---|---|---|---|
896803 | Jawad_Akbar_JJ | XORanges (eJOI19_xoranges) | C++17 | 454 ms | 12800 KiB |
This submission is migrated from previous version of oj.uz, which used different machine for grading. This submission may have different result if resubmitted.
#include <iostream>
#include <vector>
using namespace std;
const int N = (1<<18) + 1;
struct node{
int xr = 0;
} sg[N<<2][2];
void insert(int i,int v,int cur = 1,int st = 1,int en = N){
if (i>=en or i<st)
return;
// cout<<st<<" "<<en<<endl;
sg[cur][i%2].xr ^= v;
if (en - st == 1)
return;
int lc = cur + cur,rc = lc + 1,mid = (st + en)/2;
insert(i,v,lc,st,mid);
insert(i,v,rc,mid,en);
}
int get(int l,int r,int t,int cur = 1,int st = 1,int en = N){
if (l>=en or r<=st)
return 0;
if (l<=st and r>=en)
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |
# | Verdict | Execution time | Memory | Grader output |
---|---|---|---|---|
Fetching results... |