PHP数组按照概率返回的算法
现在有一9键数组:
$arr = array(1,2,3,4,5,6,7,8,9);
我希望:
1的返回概率是30%
2的返回概率是20%
3的返回概率是10%
4的返回概率是50%
其他的不管
这样的算法怎么算呢
------解决方案--------------------这个意思么?
$ConfigArr = array('30%', '20%', '10%', '50%');
$arr = array(1,2,3,4,5,6,7,8,9);
foreach ($arr as $key=>$val)
echo isset($ConfigArr[$key]) ? $val.'概率是:' . $ConfigArr[$key] . '<br />': '';
------解决方案--------------------
------解决方案--------------------
------解决方案--------------------是不是 ,通过一个函数 返回 $arr = array(1,2,3,4,5,6,7,8,9); 中的数字;
返回的楷率是:
1的返回概率是30%
2的返回概率是20%
3的返回概率是10%
4的返回概率是50%
!
是这样的吗?
完全摸得想法啊?
------解决方案--------------------那就逐个随机,比如随机1-100个数。对1,<=30返回,再次随机,对2,<=20返回
总之返回结果可能超过1个就对啦
------解决方案--------------------不是吧。。刚换件衣服不久,这么快被发现了……
------解决方案--------------------同意amani11的想法。
@#2 至于每个数是否被返回,完全是独立事件,为什么管它和是否大于100%呢?