直通BAT算法面试——排列组合、概率

题一:

已经有一个能够利用概率p产生0(1-p)概率产生1的随机函数f,请你用f函数设计一个函数m使得m能够等概论产生0、1

思路:连续调用两次f,会产生四种情况,只要你规定其中两种情况返回1另外两种情况返回0就行。

题二:
已经有一个能够能够随机产生1-5的随机函数f,利用f设计一个能够随机产生1-7的函数
(1)已经有了能够随机产生1-5的函数f。
(2)利用(1)中结果减一,得到0-4;
(3)利用(2)中结果乘5,得到0、5、10、15、20、25
(4)利用一次(2)中结果加上一次(3)中结果那么可以产生0-25的数
(5)如果(4)产生的数大于20那么就在进行一次(4),直到不大于为止,这么做的目的主要是为了将产生21-25的概率平均的分到0-20上。
(6)将(5)的结果模7产生0-6而且每个数的几率都是平均的。
(7)(6)的结果加1就得到最终结果。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值