#GOC118882. 书架排列问题
书架排列问题
题目描述
在一个图书馆整理活动中,管理员需要将两种颜色的书籍(红色和蓝色)排列在书架上。规则如下:
1.蓝色书籍每次必须连续摆放恰好 k 本。
2.红色书籍每次可以单独摆放,也可以连续摆放任意数量。
管理员需要计算书架长度在 [l, r] 范围内的所有合法排列方案数,结果对10^9+7 取模。
输入格式
第一行包含两个整数 t 和 k(1 ≤ t ≤ 1e5,1 ≤ k ≤ 1e5),表示测试用例数量和每组蓝色书籍的固定长度。
接下来 t 行,每行包含两个整数 l 和 r(1 ≤ l ≤ r ≤ 1e6),表示查询的区间。
输出格式
对于每个查询,输出一个整数,表示合法方案数模 10^9+7 的结果。
输入/输出例子1
3 2
1 3
2 3
4 4
6
5
5
样例解释
样例解释
当 k=2 时:
长度为 1 时,只能是红色书籍(1 种)。
长度为 2 时,可能是 RR 或 BB(2 种)。
长度为 3 时,可能的组合有 RRR、RBB、BBR(3 种),总共有 1+2+3=6 种。
数据范围
50% 数据 t<=100,1 ≤ l ≤ r ≤ 1e5
100% 数据 t<=1000000,1 ≤ l ≤ r≤ 1e6