该比赛已结束,您无法在比赛模式下递交该题目。您可以点击“在题库中打开”以普通模式查看和递交本题。
异或映射
题目描述
有一个下标从 0 到 n−1 的数组 a,初始时所有元素均为 0。
接下来进行 m 次操作。每次操作给出四个整数 l,r,p,q。对每个满足 l≤x≤r 的整数 x,计算
y=xxorp.
若 0≤y<n,则执行
ay←ayxorq;
否则跳过该下标。
全部操作结束后,请输出数组 a。题目保证运算过程中每个数组元素都能用 32 位无符号整数表示。
输入格式
第一行包含两个整数 n,m。
接下来 m 行,每行包含四个整数 l,r,p,q,描述一次操作。
输出格式
输出一行 n 个非负整数,依次表示 a0,a1,…,an−1。
样例 1 输入
6 2
1 4 0 7
0 3 2 5
样例 1 输出
5 2 2 2 7 0
样例 1 说明
第一次操作更新下标 1,2,3,4;第二次操作对应的下标依次为 2,3,0,1。
样例 2 输入
8 2
0 3 4 9
2 6 3 6
样例 2 输出
6 6 0 0 9 15 15 15
数据范围
对于全部数据:
1≤n,m≤218,0≤l≤r<n,
0≤p<218,0≤q<232.
本题共 20 个等分测试点。
请注意,大规模输入输出可能占用较多时间。