#GPGEN0005. 异或为 K 的不相交区间
时间限制1000 ms
内存限制256 MiB
通过率—0 / 0 次提交
题目描述
小 R 有一个长度为 的非负整数序列 。
对于一个非空连续区间 ,定义它的权值为区间内所有数的异或和:
其中, 表示按位异或运算。
给定目标值 ,请从序列中选出尽可能多的区间,使每个区间的权值都等于 ,并且这些区间两两不相交。
未被选入任何区间的元素可以忽略,不要求所有元素都被选中。若按从左到右的顺序排列选出的区间,则下一个区间的左端点必须大于前一个区间的右端点。
请输出最多能选出的区间数量。如果不存在满足要求的区间,输出 。
输入格式
第一行包含两个整数 和 。
第二行包含 个非负整数 。
输出格式
输出一个整数,表示最多能选出的区间数量。
样例
6 2
1 2 3 2 1 2
3
样例解释
可以选出 、、 这三个区间。每个区间中都只有一个数 ,因此异或和均为 ,且三个区间互不重叠。
数据范围
对于所有测试数据:
- ;
- ;
- 。