#3655. 模拟11异或(xor.md)

模拟11异或(xor.md)

题目描述

有一个长度为 nn 的数组 aa,下标从 00n1n-1。初始时,所有元素均为 00

接下来进行 mm 次操作。一次操作给出四个整数 l,r,p,ql,r,p,q。 对于每个满足 lirl \le i \le r 的整数 iij=ip\red{j = i \oplus p}0j<n0\le j < n,则执行 ajajqa_j \leftarrow a_j \oplus q;否则忽略这个 ii

求所有操作结束后的数组。

输入格式

第一行输入两个整数 n,mn,m。 接下来 mm 行,每行输入四个整数 l,r,p,ql,r,p,q,表示一次操作。

输出格式

输出一行 nn 个非负整数,依次表示 a0,a1,,an1a_0,a_1,\dots,a_{n-1}

样例输入 #1


4 2
0 2 0 3
1 3 0 5

样例输出 #1


3 6 6 5

样例输入 #2


4 2
0 2 0 3
1 3 1 5

样例输出 #2


6 3 6 5

样例输入 #3


4 2
0 2 1 3
1 3 1 5

样例输出 #3


6 3 5 6

数据范围

对于全部数据:

  • 1n,m2181 \le n,m \le 2^{18}
  • 0lr<2180 \le l \le r < 2^{18}
  • 0p<2180 \le p < 2^{18}
  • 0q23210 \le q \le 2^{32}-1

数组中每个元素在操作过程中均处于32位无符号整数范围 [0,2321][0,2^{32}-1] 内。 共20个测试点,每个测试点5分。