Fotile 模拟赛 L

Luogu
IDLGP10690
Time1000ms
Memory512MB
DifficultyP6
O2优化分块
FOTILE 得到了一个长为 $N$ 的序列 $A$,为了拯救地球,他希望知道某些区间内的最大的连续 $\rm XOR$ 和。 即对于一个询问,你需要求出 $$ \max_{l\le i\le j\le r}\bigoplus_{k=i}^{j} a_k $$ 为了体现在线操作,对于一个询问 $(x,y)$: - $l = \min ( ((x+{\rm lastans}) \bmod N)+1 , ((y+{\rm lastans}) \bmod N)+1)$. - $r = \max ( ((x+{\rm lastans}) \bmod N)+1 , ((y+{\rm lastans}) \bmod N)+1)$. **其中 $\rm lastans$ 是上次询问的答案,一开始为0。** ## Input 第一行两个整数 $N$ 和 $M$。 第二行有 $N$ 个正整数,其中第 $i$ 个数为 $A_i$,有多余空格。 后 $M$ 行每行两个数 $x$, $y$ 表示一对询问。 ## Output 共 $M$ 行,第 $i$ 行一个正整数表示第 $i$ 个询问的结果。 [samples] ## Note 对于所有的测试数据满足 $N=12000$,$M=6000$,$x$,$y$,$a_i$ 均在 signed int 范围内。
Samples
Input #1
3 3
1 4 3 
0 1
0 1
4 3
Output #1
5
7
7
API Response (JSON)
{
  "problem": {
    "name": "Fotile 模拟赛 L",
    "description": {
      "content": "FOTILE 得到了一个长为 $N$ 的序列 $A$,为了拯救地球,他希望知道某些区间内的最大的连续 $\\rm XOR$ 和。 即对于一个询问,你需要求出 $$ \\max_{l\\le i\\le j\\le r}\\bigoplus_{k=i}^{j} a_k $$ 为了体现在线操作,对于一个询问 $(x,y)$: - $l = \\min ( ((x+{\\rm lastans}) \\bmod N",
      "description_type": "Markdown"
    },
    "platform": "Luogu",
    "limit": {
      "time_limit": 1000,
      "memory_limit": 524288
    },
    "difficulty": {
      "LuoguStyle": "P6"
    },
    "is_remote": true,
    "is_sync": true,
    "sync_url": null,
    "sign": "LGP10690"
  },
  "statements": [
    {
      "statement_type": "Markdown",
      "content": "FOTILE 得到了一个长为 $N$ 的序列 $A$,为了拯救地球,他希望知道某些区间内的最大的连续 $\\rm XOR$ 和。\n\n即对于一个询问,你需要求出\n\n$$\n\\max_{l\\le i\\le j\\le r}\\bigoplus_{k=i}^{j} a_k\n$$\n\n为了体现在线操作,对于一个询问 $(x,y)$:\n\n- $l = \\min ( ((x+{\\rm lastans}) \\bmod N...",
      "is_translate": false,
      "language": "English"
    }
  ]
}
Full JSON Raw Segments