给定一个长度为nnn初始全为0的数列aia_iai,下标从1开始。定义操作模k异或v为对所有满足i≡0(modk)i \equiv 0 \pmod ki≡0(modk)的下标iii,将aia_iai异或上整数vvv(即令 ai=ai⊕va_i = a_i \oplus vai=ai⊕v)。
模k异或v
给出qqq次操作,每次操作之后输出序列的异或和,并且在操作结束之后输出整个序列。
序列的异或和为a1⊕a2⊕…⊕ana_1 \oplus a_2 \oplus \ldots \oplus a_na1⊕a2⊕…⊕an
第一行两个整数n,qn,qn,q。
接下来qqq行,每行两个整数ki,vik_i,v_iki,vi。
输出共q+1q+1q+1行,其中前qqq行每行一个整数,为每次操作结束后的序列的异或和。
最后一行为操作结束后的序列。
10 3 1 1 2 2 3 4
0 2 6 1 3 5 3 1 7 1 3 5 3
1≤n,q≤2×1051 \leq n,q \leq 2 \times 10^51≤n,q≤2×105
1≤ki,vi≤1091 \leq k_i,v_i \leq 10^91≤ki,vi≤109