hack 数据统一放在最后一个 Subtask。
题目描述
众所周知,王总张口就是经典,总是用祖安话骂人。这天,机房里一共有 $n$ 个人,编号从 $1$ 到 $n$,每个人有一个承受度 $a_i$,同时有一个常数 $k$。王总每次可以选定二元组 $(x,y),(1\le x\le n-k+1,0\le y<2^{30})$,表示他对编号在 $[x,x+k-1]$ 这段区间内的人发动一次祖安攻击,攻击效果是这一段区间内的人的承受值异或上 $y$。
只有所有人的承受值都为 $0$ 时王总才是开心的,王总总是想要知道他最少要发动多少次钻攻击才能让他表示开心。显然,因为机房里的环境瞬息万变,所以会发生 $q$ 个事件,每个事件会有两个参数 $p,v$,表示令 $a_p=v$,每次事件后请回答王总的问题。
输入格式
第一行三个正整数 $n,k,q$。
第二行 $n$ 个非负整数表示 $a$。
接下来 $q$ 行,每行两个非负整数 $p,v$,表示一个事件。
输出格式
共 $q$ 行,每行一个整数表示第 $i$ 次事件发生后的答案,若无解输出 $-1$。
样例输入
3 2 2
3 0 1
2 2
2 1
样例输出
2
-1
数据范围和提示
对于 $100%$ 的数据,$1\le k\le n\le 10^5,1\le q\le 10^5,1\le p\le n,0\le a_i,v<2^30$。
$\text{Subtask1}(10pts):k=1$。
$\text{Subtask2}(10pts):k=2$。
$\text{Subtask3}(20pts):n,q\le 500$。
$\text{Subtask4}(20pts):n,q\le 5000$。
$\text{Subtask5}(40pts):$ 无特殊限制。