美文网首页
10_5随机数01

10_5随机数01

作者: X_Y | 来源:发表于2017-10-22 17:08 被阅读9次

给定一个以p概率产生0,以1-p概率产生1的随机函数RandomP::f(),p是固定的值,但你并不知道是多少。除此之外不能使用任何额外的随机机制,请用RandomP::f()实现等概率随机产生0和1的随机函数。

class RandomP {
public:
    static int f();
};

class Random01 {
public:
    // 用RandomP::f()实现等概率的01返回
    int random01() {
        int a = RandomP::f();
        int b = RandomP::f();
        while(!a^b){
            a = RandomP::f();
            b = RandomP::f();
        }
        return a;
    }
};
```s

相关文章

  • 10_5随机数01

    给定一个以p概率产生0,以1-p概率产生1的随机函数RandomP::f(),p是固定的值,但你并不知道是多少。除...

  • 密码学基础之伪随机数

    随机数分类 真随机数 伪随机数2.1 强伪随机数2.2 弱伪随机数 真随机数:其定义为随机样本不可重现。实际上只要...

  • 在以太坊生成随机数的几种方式(含代码)

    一、什么是随机数 随机数都是由随机数生成器(Random Number Generator)生成的。随机数分为”真...

  • 无处不在的随机数

    目录: 什么是随机数 随机数分类 伪随机数生成器 真随机数生成器 各种语言中的随机数 使用系统时间作为种子是否安全...

  • Python Random库的使用

    random库用于生成随机数 基本随机数函数: seed(), random() 扩展随机数函数: randint...

  • Unity3D利用随机数种子每次产生同样的随机数

    一般计算机的随机数都是伪随机数,以一个真随机数(随机数种子)作为初始条件,然后用一定的算法不停迭代产生随机数。Un...

  • 生成随机数

    两个C函数 rand()函数生成的随机数是伪随机数,所谓伪随机数,指的是程序每次运行,生成的随机数都是不变的,生成...

  • Python笔记:Numpy常用方法-2

    Numpy随机函数 # 指定随机数种子,相同的随机数种子,生成相同的随机数 np.random.seed(10) ...

  • 喵神swifter学习笔记

    1、随机数 不需要随机数种子 arc4random()%N + begin:产生begin~begin+N的随机数...

  • 概率简要学习记录

    随机数问题 构造均匀的随机数发生器 要等概率才可以丢掉 不均匀的随机数产生器 采样问题 水库采样利用数组和随机数取...

网友评论

      本文标题:10_5随机数01

      本文链接:https://www.haomeiwen.com/subject/pmfnuxtx.html