随机采样题目

1 从随机生成7到随机生成10的关键是要做乘法,而不能做加法,做乘法时每个数生成的概率是相同的,先生成1到49的数,再对小于40的进行选择,这里实际上用的是7进制,第一次可以看做是选十位,第二次选个位,所以十位是从0到6,而不是从1到7,

还有一种方法是控制随机生成的a和b,b的范围是1到5,而a的范围是1到6,对a进行判断奇偶时,分别对应b和b+5,这个方法实际上利用的是2乘5,如果是要构造20也一样,可以用4乘5,或者用进制法,

470. 用 Rand7() 实现 Rand10()

原文地址:https://www.cnblogs.com/xxswkl/p/12772971.html