如何生成随机数,以使概率随着值的增加而增加?

时间:2019-05-21 04:38:19

标签: random

所以这是我在一次采访中看到的一个问题,比如说我们在一个网页上有两个广告位,而且我们有几个广告,例如总共有4个广告。在这种情况下,我们用1个广告标记广告1、2、3和4。问题是我们需要编写一个函数,输入广告总数,在满足以下要求的同时从4个中返回2个广告:

  1. 两个广告位上的广告不同。
  2. 如果我们运行该函数m次,则每个广告出现的概率为1:2:3:4。这意味着,如果该函数被调用5次,则预期结果将是4次广告,4次广告,3次广告3、2次广告2次和1次广告1次。

跟进:有没有一种通用的解决方案可以解决n个广告,而它们可以出现在网页上的机会是1:2:3:...:n-1:n?

由于广告的概率随着标签数量的增加而增加,因此我考虑使用细分来解决问题,如果随机数> = 0且<0.4,则选择4,很容易完成第一个广告位,但是对于第二个插槽,我不知道该如何处理。

0 个答案:

没有答案