#abc300e. [abc300_e]Dice Product 3
[abc300_e]Dice Product 3
题目描述
你有一个初始整数 和一个骰子,该骰子显示 到 之间的整数(包括 和 ),每个数出现的概率相等。
当你的整数严格小于 时,重复以下操作:
- 投掷骰子。如果它显示 ,则将你的整数乘以 。
找出你的整数最终变为 的概率(对 取模)。
如何求解取模 的概率?我们可以证明所求的概率始终是有理数。此外,在问题的约束条件下,当这个值表示为 ,其中 和 是互质整数时,我们可以证明存在一个唯一的整数 ,满足 且 。找到这个 。
约束条件
- 是一个整数。
输入
输入以以下格式从标准输入中给出:
输出
输出你的整数最终变为 的概率(对 取模)。
示例输入 1
6
示例输出 1
239578645
一种可能的过程如下所示。
- 初始时,你的整数为 。
- 投掷骰子,结果为 。你的整数变为 。
- 投掷骰子,结果为 。你的整数变为 。
- 现在,你的整数不小于 ,因此终止过程。
你的整数最终变为 ,它不等于 。
你的整数最终变为 的概率是 。由于 ,输出 。
示例输入 2
7
示例输出 2
0
无论骰子显示什么,你的整数永远不会变为 。
示例输入 3
300
示例输出 3
183676961
示例输入 4
979552051200000000
示例输出 4
812376310