#arc086d. [arc086_d]Shift and Decrement
[arc086_d]Shift and Decrement
题目描述
黑板上写着个非负整数:。
Snuke可以按任意顺序,最多总共进行次操作:
- 操作A:将黑板上的每个整数替换为除以,向下取整得到的整数。
- 操作B:将黑板上的每个整数替换为减去。如果黑板上有一个或多个,则不能执行此操作。
求Snuke执行操作后,在黑板上可能出现的不同整数组合的数量,对取模后的结果。
约束条件
- 和都是整数。
输入
输入从标准输入读取,格式如下:
输出
输出Snuke执行操作后,在黑板上可能出现的不同整数组合的数量,对取模后的结果。
示例输入1
2 2
5 7
示例输出1
6
黑板上可能的整数组合有六种:, , , , 和。例如,可以通过按照操作A和操作B的顺序执行获得。
示例输入2
3 4
10 13 22
示例输出2
20
示例输入3
1 100
10
示例输出3
11
示例输入4
10 123456789012345678
228344079825412349 478465001534875275 398048921164061989 329102208281783917 779698519704384319 617456682030809556 561259383338846380 254083246422083141 458181156833851984 502254767369499613
示例输出4
164286011