AT_diverta2019_e.XOR Partitioning
省选/NOI-
通过率:0%
AC君温馨提醒
该题目为【atcoder】题库的题目,您提交的代码将被提交至atcoder进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
定义长度为 n 的数列 a 的美丽值为 a1 ⊕ a2 ⊕ ⋯ ⊕ an,其中 ⊕ 表示按位异或运算。
给定一个长度为 N 的数列 A。すぬけ君想要在 A 中插入 0 个或多个分隔符,将其分割成若干个非空的连续子序列。
插入分隔符的方法共有 2N−1 种。在这些方法中,要求所有被分割出来的子序列的美丽值都相等。请计算满足条件的分割方法数,并对 109+7 取模。
输入格式
输入通过标准输入给出,格式如下:
N A1 A2 … AN
输出格式
请输出答案。
输入输出样例
输入#1
3 1 2 3
输出#1
3
输入#2
3 1 2 2
输出#2
1
输入#3
32 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0
输出#3
147483634
输入#4
24 1 2 5 3 3 6 1 1 8 8 0 3 3 4 6 6 4 0 7 2 5 4 6 2
输出#4
292
说明/提示
限制条件
- 所有输入均为整数。
- 1≤N≤5×105
- 0≤Ai<220
样例解释 1
满足条件的分割方法有以下 3 种。仅当分割为 (1),(2),(3) 时,所有子序列的美丽值不相等。
- (1,2,3)
- (1),(2,3)
- (1,2),(3)
样例解释 3
请计算满足条件的方法数,并对 109+7 取模。
由 ChatGPT 4.1 翻译
输入解题思路,AI测评打分。不知道怎么写?