3092: WM(evolve)

内存限制:256 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:0 解决:

题目描述

小 W 和小 M 相约测试默契值~
他们面前有 N 堆爱心,每堆爱心有一个爱心值 Ai。小 W 先选择
一堆爱心,记为第 i 堆,小 M 再选择一堆爱心,记为第 j 堆,满足
1<=i<j<=N。因为要触碰到爱心,他们每组选择的糟糕指数为
Ai|Ai+1|Ai+2|…|Aj,其中|为二进制或运算。当糟糕指数小于 M 时,视
为小 W 和小 M 是 “心有灵犀” 的, 求有多少组方案使二人心有灵犀。

输入

第一行两个正整数 N,M。
第二行为 N 个正整数 A1,A2…An。

输出

一行一个整数表示选择方案数。

样例输入 复制

4 6
1 3 5 1

样例输出 复制

2

提示

【数据范围】
对于 30%的数据,1<=N<=1000。
对于 60%的数据,1<=N<=50000。
对于 100%的数据,1<=N<=1000000,0<=M<=2^30,1<=Ai<=2^30。