303021: CF587E. Duff as a Queen
Memory Limit:256 MB
Time Limit:7 S
Judge Style:Text Compare
Creator:
Submit:0
Solved:0
Description
Duff as a Queen
题意翻译
给出一个序列,请支持以下下两种操作。 1.将一个区间内的元素全部异或同一个数。 2.询问一个区间内有多少种任意子集的异或值。即对于这个区间内的元素,任取一个子集,将子集内的元素异或起来,问有多少种异或值。(空集合法,异或值为0)题目描述
Duff is the queen of her country, Andarz Gu. She's a competitive programming fan. That's why, when he saw her minister, Malek, free, she gave her a sequence consisting of $ n $ non-negative integers, $ a_{1},a_{2},...,a_{n} $ and asked him to perform $ q $ queries for her on this sequence. ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF587E/13c69dfd57d48044360a9b122095311a6f41fd5f.png)There are two types of queries: 1. given numbers $ l,r $ and $ k $ , Malek should perform ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF587E/8a1be9e3c00e9730bbb643a5d7ee378a339f739b.png) for each $ l<=i<=r $ (![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF587E/5b5823515617df7c58796c723b273483849bc16e.png), bitwise exclusive OR of numbers $ a $ and $ b $ ). 2. given numbers $ l $ and $ r $ Malek should tell her the score of sequence $ a_{l},a_{l+1},...\ ,a_{r} $ . Score of a sequence $ b_{1},...,b_{k} $ is the number of its different Kheshtaks. A non-negative integer $ w $ is a Kheshtak of this sequence if and only if there exists a subsequence of $ b $ , let's denote it as $ b_{i1},b_{i2},...\ ,b_{ix} $ (possibly empty) such that ![](https://cdn.luogu.com.cn/upload/vjudge_pic/CF587E/1e3a601936704cd1f565653c79e75d2cbcc0e258.png) ( $ 1<=i_{1}<i_{2}<...<i_{x}<=k $ ). If this subsequence is empty, then $ w=0 $ . Unlike Duff, Malek is not a programmer. That's why he asked for your help. Please help him perform these queries.输入输出格式
输入格式
The first line of input contains two integers, $ n $ and $ q $ ( $ 1<=n<=2×10^{5} $ and $ 1<=q<=4×10^{4} $ ). The second line of input contains $ n $ integers, $ a_{1},a_{2},...,a_{n} $ separated by spaces ( $ 0<=a_{i}<=10^{9} $ for each $ 1<=i<=n $ ). The next $ q $ lines contain the queries. Each line starts with an integer $ t $ ( $ 1<=t<=2 $ ), type of the corresponding query. If $ t=1 $ , then there are three more integers in that line, $ l,r $ and $ k $ . Otherwise there are two more integers, $ l $ and $ r $ . ( $ 1<=l<=r<=n $ and $ 0<=k<=10^{9} $ )
输出格式
Print the answer of each query of the second type in one line.
输入输出样例
输入样例 #1
5 5
1 2 3 4 2
2 1 5
1 2 2 8
2 1 5
1 1 3 10
2 2 2
输出样例 #1
8
16
1