秋招准备-算法题-概率类

rand 5 生成rand 7

随机数生成器
现有一个rand5的随机数,欲生成一个rand8的随机数,应如何操作?

代码

def rand7():
    while True:
        i = 5(rand(5) - 1) - (rand(5) - 1)
        if i < 21:
            return i % 7 + 1  

抛硬币分苹果

现有一枚硬币,正面向上概率为p,反面向上为1-p,现有一个苹果,三个人甲乙丙分,只有一个人得到,你要如何利用抛硬币制定公平的策略决定谁能分到苹果?

我们可以抛三次硬币,出现以下结果的分别为甲乙丙得苹果,如果出现其余结果则重新抛,可知每个人获得苹果的概率均为 p * p * (1-p)

正正反 正反正 反正正

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容