以下是我的思路,请各位看官点评下是否存在不妥的地方。 假设:奖品不设上限,中奖概率如下: 一等奖:5% 二等奖:10% 三等奖:20% 安慰奖:65% 思路: 1、设置长度为100的数组来作为抽奖箱
以下是我的思路,请各位看官点评下是否存在不妥的地方。
假设:奖品不设上限,中奖概率如下:
一等奖:5%
二等奖:10%
三等奖:20%
安慰奖:65%
思路:
1、设置长度为100的数组来作为抽奖箱。其中数组的分布如下:
下标0-4:一等奖,值为1;
下标5-14:二等奖,值为2;
下标15-34:三等奖,值为3;
下标35-99:安慰奖,值为4;
设置一个0-99的随机数,以随机数为下标取数组。
2、统计中奖的人数和抽奖总人数,计算中奖率,当某个奖项的中奖率大于设定的中奖率时,后面抽中奖的人不再中奖。
如:一等奖中奖4人,抽奖人数为100,中奖率为4%<5%,中奖
一等奖中奖6人,抽奖人数为100,中奖率为6%>5%,最后抽中的人不中奖(安慰奖)