#P6280. [USACO20OPEN] Exercise G
[USACO20OPEN] Exercise G
题目描述
Farmer John(又)想到了一个新的奶牛晨练方案!
如同之前,Farmer John 的 头奶牛站成一排。对于 的每一个 ,从左往右第 头奶牛的编号为 。他告诉她们重复以下步骤,直到奶牛们与她们开始时的顺序相同。
给定长为 的一个排列 ,奶牛们改变她们的顺序,使得在改变之前从左往右第 头奶牛在改变之后为从左往右第 头。
例如,如果 ,那么奶牛们总共进行一步。如果 ,那么奶牛们总共进行六步。每步之后奶牛们从左往右的顺序如下:
0 步:
1 步:
2 步:
3 步:
4 步:
5 步:
6 步:
求所有正整数 的和,使得存在一个长为 的排列,奶牛们需要进行恰好 步。
由于这个数字可能非常大,输出答案模 的余数(, 是质数)。
输入格式
输入的第一行包含 和 。
输出格式
输出一个整数。
5 1000000007
21
提示
样例解释:
存在排列使得奶牛需要进行 、、、、 以及 步。因此,答案为 。
对于 的数据,。
共 个测试点,其中 为样例,其余性质如下:
测试点 满足 。
测试点 没有额外限制。
出题人:Benjamin Qi