欢迎来到天天文库
浏览记录
ID:30511256
大小:16.66 KB
页数:5页
时间:2018-12-30
《基于php微信红包的算法探讨》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库。
1、我真正系统地接触和学习党的基本知识是在这次中级党校的培训班上。通过学习,了解了党的发展历程,对党的性质、宗旨、任务等基本知识有了进一步的了解基于PHP微信红包的算法探讨 微信群发红包大家都使用过吧,但是到底如何实现微信红包群发?这篇文章就为大家详细的揭晓答案,感兴趣的小伙伴们可以参考一下 突发奇想给校友微信群发了红包,我设定红包总额为10元,支持28个人随机领取。 于是一个有趣的结果出现了: A领取了0.26元 B领取了0.29元 C领取了0.02元 D领取了0.56元 E领取了0.64元 …… 微信是采用什么样的算法做到的?简单百度了下,目前尚未有官
2、方的说明,仅仅在知乎里有一个较为热门的讨论,链接戳这里,不过他们讨论的太过于深入,有掉坑之嫌。 我按照自己的逻辑尝试了下,这个算法需要满足以下几点要求: 1、每个人都要能够领取到红包; 2、每个人领取到的红包金额总和=总金额; 3、每个人领取到的红包金额不等,但也不能差的太离谱,不然就没趣味;对党的认识也有了进一步的提高。才真正体会到了中国共产党的伟大、光荣和正确,更感到只有中国共产党是全中国最广大人民利益的忠实代表我真正系统地接触和学习党的基本知识是在这次中级党校的培训班上。通过学习,了解了党的发展历程,对党的性质、宗旨、任务等基本知识有了进一步的了解 4、算
3、法一定要简单,不然对不起腾讯这个招牌; 正式编码之前,先搭建一个递进的模型来分析规律 设定总金额为10元,有N个人随机领取: N=1 则红包金额=X元; N=2 为保证第二个红包可以正常发出,第一个红包金额=0.01至9.99之间的某个随机数 第二个红包=10-第一个红包金额; N=3 红包1=0.01至0.98之间的某个随机数 红包2=0.01至(10-红包1-0.01)的某个随机数 红包3=10-红包1-红包2 …… 至此,规律出现啦!开始编码! Php代码 header("Content-Type:text/html;c
4、harset=utf-8");//输出不乱码,你懂的 $total=10;//红包总额 $num=8;//分成8个红包,支持8人随机领取 $min=0.01;//每个人最少能收到0.01元 for($i=1;$i { 对党的认识也有了进一步的提高。才真正体会到了中国共产党的伟大、光荣和正确,更感到只有中国共产党是全中国最广大人民利益的忠实代表我真正系统地接触和学习党的基本知识是在这次中级党校的培训班上。通过学习,了解了党的发展历程,对党的性质、宗旨、任务等基本知识有了进一步的了解 $safe_total=$total-($num-$i)*$min;/
5、/随机安全上限 $money=mt_rand($min*100,$safe_total*100)/100; $total=$total-$money; echo'第'.$i.'个红包:'.$money.'元,余额:'.$total.'元'; } echo'第'.$num.'个红包:'.$total.'元,余额:0元'; 输入一看,波动太大,这数据太无趣了! 第1个红包:7.48元,余额:2.52元 第2个红包:1.9元,余额:0.62元 第3个红包:0.49元,余额:0.13元 第4个红包:0.04元,余额:0.09元 第5
6、个红包:0.03元,余额:0.06元 第6个红包:0.03元,余额:0.03元 第7个红包:0.01元,余额:0.02元 第8个红包:0.02元,余额:0元 改良一下,将平均值作为随机安全上限来控制波动差 Php代码 对党的认识也有了进一步的提高。才真正体会到了中国共产党的伟大、光荣和正确,更感到只有中国共产党是全中国最广大人民利益的忠实代表我真正系统地接触和学习党的基本知识是在这次中级党校的培训班上。通过学习,了解了党的发展历程,对党的性质、宗旨、任务等基本知识有了进一步的了解 header("Content-Type:text/html;chars
7、et=utf-8");//输出不乱码,你懂的 $total=10;//红包总额 $num=8;//分成8个红包,支持8人随机领取 $min=0.01;//每个人最少能收到0.01元 for($i=1;$i { $safe_total=($total-($num-$i)*$min)/($num-$i);//随机安全上限 $money=mt_rand($min*100,$safe_total*100)/100; $total=$total-$money; echo'第'.$i.'个红包:'
此文档下载收益归作者所有