- 描述
-
小明是个掷骰子爱好者。有一天他碰到了这么一个问题:
有一枚 6 个面的骰子,分别写了 1, 2, 3, 4, 5, 6 ,每一面朝上的概率是均等的。
现在小明想知道,如果他投掷 n 次,并且将结果按顺序写在纸上成为一个数。(比如说如果小明扔了 3 次,分别是 3, 2, 5 ,那么他最后得到的数就是 325)他现在想知道这个数是 k 的倍数的可能情况有多少种,其中 k 是一个特定的数。
由于这个方案数可能会很大,所以请你输出结果对 109+7 (即 1000000007)取模的结果。
- 输入
- 一行,包含2个整数 n,k,含义如题所示。(1<=n<=20, 1<=k<=1000)
- 输出
- 一行一个整数,表示答案。
- 样例输入
-
样例输入1 2 12 样例输入2 2 4 样例输入3 10 23
- 样例输出
-
样例输出1 3 样例输出2 9 样例输出3 2628965
- 提示
- 样例说明:
样例1,n=2时,一共有36种可能的结果,其中能被12整除的是(12,24,36)三种,因此输出3。
样例2,n=2,依然有36种可能的结果,其中能被4整除的有(12,16,24,32,36,44,52,56,64)一共9种。
特别注意:答案可能非常大,甚至超过int范围,题目要求只需输出答案对10^9+7取余的结果即可。
数据范围:
对于30%的数据,n<=3;
对于另外30%的数据,k<=3;
对于另外20%的数据,n<=8;
对于全部数据,1<=n<=20, 1<=k<=1000;