编程题
### 问题描述 小齐正在进行她的牛奶学作业,需要创建一种三种不同牛奶混合物的配方。然而,正如所有优秀的奶牛所知,某些牛奶成分不能混合在一起,否则会引起爆炸。特别地,标有 $a$ 和 $b$ 的两种牛奶成分只有在 $a \oplus b \leq K$ 的情况下才能在同一混合物中出现($1 \leq K \leq 10^9$)。 这里,$a \oplus b$ 表示非负整数 $a$ 和 $b$ 的“按位异或”操作。该操作等效于在二进制中对应位相加并舍弃进位。例如, $0 \oplus 0 = 1 \oplus 1 = 0$ $1 \oplus 0 = 0 \oplus 1 = 1$ $5 \oplus 7 = 10_2 \oplus 111_2 = 010_2 = 2$ 小齐有 $N$($1 \leq N \leq 2 \times 10^4$)盒牛奶成分,第 $i$ 盒包含从 $l_i$ 到 $r_i$ 的标签($0 \leq l_i \leq r_i \leq 10^9$)。保证各个牛奶盒的成分按照其含量的递增顺序提供,即对于每个 $1 \leq i < N$,都有 $r_i < l_{i+1}$。 小齐想知道她可以创建多少种不同的三种不同牛奶混合物。如果两个混合物至少有一种牛奶成分不同,则它们被认为是不同的。由于答案可能非常大,要对 $10^9+7$ 取模。 ### 输入格式 第一行包含两个整数 $N$ 和 $K$。 接下来的 $N$ 行,每行包含两个用空格分隔的整数 $l_i$ 和 $r_i$。保证提供的牛奶成分盒按照其内容的递增顺序。 ### 输出格式 输出小齐可以创建的三种不同牛奶混合物的数量,对 $10^9+7$ 取模。 ### 样例输入 ``` 1 13 0 199 ``` ### 样例输出 ``` 4280 ``` ### 评测数据规模 $1 \leq max(K, r_N) \leq 10^6$。
查看答案
赣ICP备20007335号-2