题目名称 | 3709. 线性同余发生器 |
---|---|
输入输出 | LCG.in/out |
难度等级 | ★★ |
时间限制 | 200 ms (0.2 s) |
内存限制 | 256 MiB |
测试数据 | 10 |
题目来源 |
|
开放分组 | 全部用户 |
提交状态 | |
分类标签 | |
分享题解 |
通过:2, 提交:3, 通过率:66.67% | ||||
|
100 | 0.700 s | 3.44 MiB | C++ |
|
100 | 0.710 s | 3.44 MiB | C++ |
|
0 | 1.200 s | 3.44 MiB | C++ |
关于 线性同余发生器 的近10条评论(全部评论) |
---|
线性同余发生器(LCG)是一种伪随机序列生成器算法,能产生具有不连续计算的伪随机序列的分段线性方程。生成器由循环关系定义:
其中,$a,c,m,x_n$均为非负整数,$x_0$被称为“种子”,$∀x_n∈[0,m-1]$。
若对于一个$c$值,存在一个“种子”$x_0$,使得计算出所有的$x_n$都等于$x_0$,则称发生器进入了“黑洞”,$x_0$就称作$c$的“黑洞值”。
例如,当$a=5,m=11,c=4$时,“黑洞值”$x_0=10$,此时所有$x_n$都等于$10$。
现在,告诉你$a$与$m$的值,对于每个$c∈[1,m-1]$,请算出$c$的“黑洞值”的乘积。答案对$10^9+7$取模。
一行两个正整数,表示$a,m$。
一个数,表示“黑洞值”的乘积。特殊地,若某个$c$没有“黑洞值”,输出" No black hole! "。
5 11
3628800
对于每个$c∈[1,m-1]$,$c$的“黑洞值”分别为8,5,2,10,7,4,1,9,6,3,乘积为3628800
保证$m$为质数
$m≤10^7,1<a<m$
$rsr$