[CQOI2015] 选数
题目描述
我们知道,从区间 $[L,H]$($L$ 和 $H$ 为整数)中选取 $N$ 个整数,总共有 $(H-L+1)^N$ 种方案。小 z 很好奇这样选出的数的最大公约数的规律,他决定对每种方案选出的 $N$ 个整数都求一次最大公约数,以便进一步研究。然而他很快发现工作量太大了,于是向你寻求帮助。你的任务很简单,小 z 会告诉你一个整数 $K$,你需要回答他最大公约数刚好为 $K$ 的选取方案有多少个。
由于方案数较大,你只需要输出其除以 $10^9+7$ 的余数即可。
输入输出格式
输入格式
输入一行,包含四个空格分开的正整数,依次为 $N,K,L,H$。
输出格式
输出一个整数,为所求方案数除以 $10^9 + 7$ 的余数。
输入输出样例
输入样例 #1
2 2 2 4
输出样例 #1
3
说明
#### 样例 1 解释
所有可能的选择方案:$(2, 2), (2, 3), (2, 4), (3, 2), (3, 3), (3, 4), (4, 2), (4, 3), (4, 4)$。
其中最大公约数等于 $2$ 的只有 $3$ 组:$(2, 2), (2, 4), (4, 2)$。
#### 数据规模与约定
对于 $100\%$ 的数据,$1\le N,K\le 10^9$,$1\le L\le H\le 10^9$,$H-L\le 10^5$。