题目描述
Bessie has been procrastinating on her cow-mistry homework and now needs your
help! She needs to create a mixture of three different cow-michals. As all good
cows know though, some cow-michals cannot be mixed with each other or else they
will cause an explosion. In particular, two cow-michals with labels $a$ and $b$
can only be present in the same mixture if $a \oplus b \le K$
($1 \le K \le 10^9$).
NOTE: Here, $a\oplus b$ denotes the "bitwise exclusive or'' of non-negative
integers $a$ and $b$. This operation is equivalent to adding each corresponding
pair of bits in base 2 and discarding the carry. For example,
$$0\oplus 0=1\oplus 1=0,$$
$$1\oplus 0=0\oplus 1=1,$$
$$5\oplus 7=101_2\oplus 111_2=010_2=2.$$
Bessie has $N$ ($1\le N\le 2\cdot 10^4$) boxes of cow-michals and the $i$-th box contains cow-michals
labeled $l_i$ through $r_i$ inclusive $(0\le l_i \le r_i \le 10^9)$. No two
boxes have any cow-michals in common. She wants to know how many unique mixtures
of three different cow-michals she can create. Two mixtures are considered
different if there is at least one cow-michal present in one but not the other.
Since the answer may be very large, report it modulo $10^9 + 7$.
INPUT FORMAT (input arrives from the terminal / stdin):
The first line contains two integers $N$ and $K$.
Each of the next $N$ lines contains two space-separated integers $l_i$ and
$r_i$. It is guaranteed that the boxes of cow-michals are provided in increasing
order of their contents; namely, $r_i<l_{i+1}$ for each $1\le i<N$.
OUTPUT FORMAT (print output to the terminal / stdout):
The number of mixtures of three different cow-michals Bessie can create, modulo
$10^9 + 7$.
SAMPLE INPUT:
1 13
0 199
SAMPLE OUTPUT:
4280
We can split the chemicals into 13 groups that cannot cross-mix: $(0\ldots 15)$,
$(16\ldots 31)$, $\ldots$ $(192\ldots 199)$. Each of the first twelve groups
contributes $352$ unique mixtures and the last contributes $56$ (since all
$\binom{8}{3}$ combinations of three different cow-michals from
$(192\ldots 199)$ are okay), for a total of
$352\cdot 12+56=4280$.
SAMPLE INPUT:
6 147
1 35
48 103
125 127
154 190
195 235
240 250
SAMPLE OUTPUT:
267188
SCORING
Test cases 3-4 satisfy $\max(K,r_N)\le 10^4$. Test cases 5-6 satisfy $K=2^k-1$ for some integer $k\ge 1$.Test cases 7-11 satisfy $\max(K,r_N)\le 10^6$.Test cases 12-16 satisfy $N\le 20$.Test cases 17-21 satisfy no additional constraints.
Problem credits: Benjamin Qi
输入格式
见题面
输出格式
见题面