Given a sequence \(a_1{\dots}a_n\). You need to perform m queries on it.
In each query, two parameters \(x,y\) are given, and we let
In this statement, t is a given constant, which can be 0 or 1. And \(ans\) is the answer of last query, with initial value is 0.
You need to find a pair \((i,j)\), satisfies \(l\le i\le j\le r\), and maximize \(a_i\ xor\ a_{i+1}\ xor\dots xor\ a_j\).
The answer of this query is \(a_i\ xor\ a_{i+1}\ xor\dots xor\ a_j\).
Input
The first line contains three integers, n, m, and t.
The second line contains n integers, representing the sequence a.
The next m lines, each line contains two integers, x and y.
Output
For each query, output an integer represents the answer.
Constraints
\(1\le n,m\le 20000\)
\(0\le t\le 1\)
\(0\le x,y,a_i\le 10^9\)
The actual queries are \((1,5),(1,3),(3,5)\).
You can choose \((i,j)\) as \((1,2),(1,2),(3,4)\) to maximize the value.
Please login to use the editor
You need to be logged in to access the code editor
Loading...
Please wait while we load the editor
Login to unlock the editorial
Please login to use the editor
You need to be logged in to access the code editor
Loading...
Please wait while we load the editor