CF1030E.Vasya and Good Sequences
普及+/提高
通过率:0%
时间限制:2.00s
内存限制:256MB
AC君温馨提醒
该题目为【codeforces】题库的题目,您提交的代码将被提交至codeforces进行远程评测,并由ACGO抓取测评结果后进行展示。由于远程测评的测评机由其他平台提供,我们无法保证该服务的稳定性,若提交后无反应,请等待一段时间后再进行重试。
题目描述
Vasya has a sequence a consisting of n integers a1,a2,…,an. Vasya may pefrom the following operation: choose some number from the sequence and swap any pair of bits in its binary representation. For example, Vasya can transform number 6 (…000000001102) into 3 (…000000000112), 12 (…0000000011002), 1026 (…100000000102) and many others. Vasya can use this operation any (possibly zero) number of times on any number from the sequence.
Vasya names a sequence as good one, if, using operation mentioned above, he can obtain the sequence with bitwise exclusive or of all elements equal to 0.
For the given sequence a1,a2,…,an Vasya'd like to calculate number of integer pairs (l,r) such that 1≤l≤r≤n and sequence al,al+1,…,ar is good.
瓦西娅有一个由 n 个整数 a1,a2,…,an 组成的序列 a。瓦西娅可以执行如下操作:从序列中任选一个数,并交换其二进制表示中的任意两个比特位。例如,瓦西娅可以将数字 6(二进制为 …000000001102)变换为 3(…000000000112)、12(…0000000011002)、1026(…100000000102)以及其他许多数。瓦西娅可以在序列中的任意数字上,以任意次数(包括零次)执行该操作。
若瓦西娅能通过上述操作,使得序列中所有元素的按位异或结果等于 0,则他称该序列为“好序列”。
对于给定的序列 a1,a2,…,an,瓦西娅希望计算满足 1≤l≤r≤n 的整数对 (l,r) 的个数,使得子序列 al,al+1,…,ar 是一个好序列。
输入格式
The first line contains a single integer n (1≤n≤3⋅105) — length of the sequence.
The second line contains n integers a1,a2,…,an (1≤ai≤1018) — the sequence a.
第一行包含一个整数 n(1≤n≤3⋅105)——序列的长度。
第二行包含 n 个整数 a1,a2,…,an(1≤ai≤1018)——序列 a。
输出格式
Print one integer — the number of pairs (l,r) such that 1≤l≤r≤n and the sequence al,al+1,…,ar is good.
输出一个整数——满足 1≤l≤r≤n 且子序列 al,al+1,…,ar 是“好”的数对 (l,r) 的个数。
输入输出样例
输入#1
3 6 7 14
输出#1
2
输入#2
4 1 2 1 16
输出#2
4
说明/提示
In the first example pairs (2,3) and (1,3) are valid. Pair (2,3) is valid since a2=7→11, a3=14→11 and 11⊕11=0, where ⊕ — bitwise exclusive or. Pair (1,3) is valid since a1=6→3, a2=7→13, a3=14→14 and 3⊕13⊕14=0.
In the second example pairs (1,2), (2,3), (3,4) and (1,4) are valid.
在第一个例子中,数对 (2,3) 和 (1,3) 是合法的。数对 (2,3) 合法,因为 a2=7→11,a3=14→11,且 11⊕11=0,其中 ⊕ 表示按位异或运算。数对 (1,3) 合法,因为 a1=6→3,a2=7→13,a3=14→14,且 3⊕13⊕14=0。
在第二个例子中,数对 (1,2)、(2,3)、(3,4) 和 (1,4) 是合法的。
输入解题思路,AI测评打分。不知道怎么写?