#abc283g. [abc283_g]Partial Xor Enumeration

[abc283_g]Partial Xor Enumeration

问题陈述

对于一个非负整数序列(a1,a2,,an)(a _ 1,a _ 2,\ldots,a _ n),我们定义它的异或值operatornamexor\\operatorname{xor}为整数XX,其中对于所有非负整数jj

  • XX的第2j2^j位是11当且仅当a1,,ana _ 1,\ldots,a _ n中有奇数个元素的第2j2^j位是11

给定一个长度为NN的非负整数序列A=(A1,A2,,AN)A=(A _ 1,A _ 2,\ldots,A _ N)

令$\\lbrace s _ 1,s _ 2,\ldots,s _ k\\rbrace\ (s _ 1\lt s _ 2\lt\cdots\lt s _ k)$为所有可能是AA的非连续(可以为空)子序列的operatornamexor\\operatorname{xor}构成的集合。

给定整数LLRR,按照顺序打印出sL,sL+1,,sRs _ L,s _ {L+1},\ldots,s _ R

约束条件

  • 1N2×1051\leq N\leq2\times10^5
  • 0Ai<260 (1iN)0\leq A _ i\lt2^{60}\ (1\leq i\leq N)
  • 1LRk1\leq L\leq R\leq k
  • RL2×105R-L\leq2\times10^5
  • 输入中的所有值都是整数。

输入

输入以以下格式从标准输入给出:

NN LL RR A1A _ 1 A2A _ 2 ANA _ N

输出

按升序打印所有的si (LiR)s _ i\ (L\leq i\leq R),并以空格分隔。


示例输入1

4 1 8
2 21 17 21

示例输出1

0 2 4 6 17 19 21 23

AA有14个可能的非连续子序列:$(),(2),(17),(21),(2,17),(2,21),(17,21),(21,17),(21,21),(2,17,21),(2,21,17),(2,21,21),(21,17,21)$,以及(2,21,17,21)(2,21,17,21),它们的operatornamexor\\operatorname{xor}值分别如下。

  • ()()operatornamexor\\operatorname{xor}00
  • (2)(2)operatornamexor\\operatorname{xor}22
  • (17)(17)operatornamexor\\operatorname{xor}1717
  • (21)(21)operatornamexor\\operatorname{xor}2121
  • (2,17)(2,17)operatornamexor\\operatorname{xor}1919
  • (2,21)(2,21)operatornamexor\\operatorname{xor}2323
  • (17,21)(17,21)operatornamexor\\operatorname{xor}44
  • (21,17)(21,17)operatornamexor\\operatorname{xor}44
  • (21,21)(21,21)operatornamexor\\operatorname{xor}00
  • (2,17,21)(2,17,21)operatornamexor\\operatorname{xor}66
  • (2,21,17)(2,21,17)operatornamexor\\operatorname{xor}66
  • (2,21,21)(2,21,21)operatornamexor\\operatorname{xor}22
  • (21,17,21)(21,17,21)operatornamexor\\operatorname{xor}1717
  • (2,21,17,21)(2,21,17,21)operatornamexor\\operatorname{xor}1919

因此,所有可能是AA子序列的operatornamexor\\operatorname{xor}值构成的集合是lbrace0,2,4,6,17,19,21,23rbrace\\lbrace0,2,4,6,17,19,21,23\\rbrace


示例输入2

4 3 7
2 21 17 21

示例输出2

4 6 17 19 21

示例输入3

5 1 1
0 0 0 0 0

示例输出3

0

AA可能包含相同的值。


示例输入4

6 21 21
88 44 82 110 121 80

示例输出4

41

示例输入5

12 26 48
19629557415 14220078328 11340722069 30701452525 22333517481 720413777 11883028647 20926361028 24376768297 720413777 27999065315 13558621130

示例输出5

13558621130 14220078328 14586054825 15518998043 15970974282 16379590008 17091531049 17412316967 17836964726 18263536708 18965057557 19629557415 20282860278 20926361028 21302757781 21908867832 22333517481 22893781403 23595304394 23723463544 24376768297 24885524507 25261923402

请注意,输入和输出的数值可能不适应3232-operatornamebit\\operatorname{bit}整型。