题目地址:http://acm.hdu.edu.cn/showproblem.php?pid=1014
这道题就是题目有点难懂,其实难度很小,就是产生伪随机数时给出的步长step和上限mod,判断下这两个值是否可以让产生的随机数均匀分布,所谓的均匀分布就是在mod步里能产生出0到mod-1这mod个数。
const long int MAX_MOD = 100000;
bool gened[MAX_MOD] = {false};//数是否产生
void doRandomTest(int step,int mod)
int seed = 0,tmp,i;//初始种子值为零
gened[0] = true;//第一个产生的是零
gened[tmp] = true;//第tmp个数已经产生了
if(gened[i]==false)//有数没有产生出来
printf("%10d%10d Good Choice\n",step,mod);
printf("%10d%10d Bad Choice\n",step,mod);
int main(int argc,char* argv[])
本文转自Phinecos(洞庭散人)博客园博客,原文链接:http://www.cnblogs.com/phinecos/archive/2007/12/29/1019397.html,如需转载请自行联系原作者