U537931 卤蛋对撞(eggs)
题目描述
《卤蛋对撞》游戏规则
《卤蛋对撞》是鸭嘴兽们最喜欢的游戏。具体规则如下:
- 鸭嘴兽会把n个卤蛋排成一排,每个卤蛋有一个美味值ai(1≤i≤n),表示这个卤蛋是否卤得入味。
- n个卤蛋排成一排后,裁判会给出一个目标美味值k。
- 鸭嘴兽可以选择一个长度大于1的区间[L,R](1≤L<R≤n),轻轻拨一下第L个卤蛋,卤蛋会向右倒下撞到第L+1个卤蛋,然后第L+1个卤蛋又会向右倒下撞到第L+2个卤蛋,以此类推,直到第R−1个卤蛋撞到第R个卤蛋,鸭嘴兽会避免下一次碰撞的发生。
- 每个卤蛋的调味料都不一样,对撞会影响美味值。当第i个卤蛋撞击第i+1个卤蛋后,第i+1个卤蛋的美味值ai+1会变成ai⊕ai+1,其中ai⊕ai+1表示⌊ai+1ai⌋,即下取整除法,如7⊕2=⌊27⌋=3。
- 区间[L,R]的所有卤蛋完成对撞后,第R个卤蛋的美味值将变为(((aL⊕aL+1)⊕aL+2)⊕⋯)⊕aR,如果其为k,则鸭嘴兽可以获得游戏的胜利。
现在鸭嘴兽们想知道,给定一排卤蛋和目标美味值,能获得游戏胜利的区间有多少个。
输入格式
输入格式说明:
- 第一行是一个整数n,表示卤蛋的个数。
- 第二行是n个正整数,第i个数表示第i个卤蛋的美味值ai。
- 第三行是一个正整数k,表示目标美味值。
输出格式
一个整数,表示答案
输入输出样例 #1
输入 #1
3
8 4 2
2
输出 #1
2
说明/提示
样例1解释
选择区间[1,2],第2个卤蛋的美味值是8⊕4=⌊48⌋,能获得游戏胜利。
选择区间[1,3],第3个卤蛋的美味值是(8⊕4)⊕2=1,不能获得游戏胜利。
选择区间[2,3],第3个卤蛋的美味值是4⊕2=2,能获得游戏胜利。
所以能获得游戏胜利的区间有2个。
数据范围
- 对于30%的数据,满足n≤500,k≤500,ai≤104。
- 对于50%的数据,满足n≤104,k≤104,ai≤104。
- 对于另外20%的数据,满足ai>1。
- 对于100%的数据,满足n≤5×105,k≤109,ai≤109。