子段异或
比赛主页
时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
64bit IO Format: %lld
题目描述
输入一个数列a,你需要输出其中异或值为0的不同子段的数量。一个子段 [l,r] (
)的异或值为
,其中
符号代表
异或运算
。
两个子段被视为相同的,当且仅当其开始和结束位置均对应相同。
输入描述:
第一行一个整数 n ,代表数列长度。
第二行 n 个整数,代表数列。
输出描述:
输出一个整数,代表答案。
示例1
输入
复制
5 1 2 3 2 1
5 1 2 3 2 1
输出
复制
2
2
说明
子段 [1,3] 和子段 [3,5] 是合法子段。
备注:
子段异或
返回全部题目
列表加载中...
5 1 2 3 2 1
2