文章详情页
javascript - 用js实现红包分配问题
问题描述
100元给10个人发红包,红包大小随机,每个人都能得到红包
问题解答
回答1:rpAmount = 100ppCount = 10rpResult=[]rpRnds = []rpRndSum = 0for(let i=0;i<ppCount;i++){let rnd = Math.random();rpRndSum+=rnd;rpRnds.push(rnd);}rpRnds.forEach((rnd)=>{rpResult.push(rpAmount*rnd/rpRndSum)})console.log(’rpResult’,{rpResult,sum:rpResult.reduce((acc,val)=>{return acc+val})})
核心思想:随机数直接确定的权重, 而非金额.
回答2:可以看看这个/q/10...
回答3:思路:使用random函数每次随机分配 每次得出的红包值大于0.01小于剩余金额-剩余人数*0.01 最后一个人获得剩余全部就行
标签:
JavaScript
相关文章:
1. 请问带渐变背景的进度条如何实现?求给点思路2. javascript - 读js权威指南“作为值得函数”产生了疑惑,求释疑3. python3.x - python中的虚拟环境怎样设置一直处于激活状态4. boostrap怎么在移动端不显示sidebar?5. 网页爬虫 - Python爬虫返回状态码与实际情况不符?6. arguments问题7. mysql - 数据库建字段,默认值空和empty string有什么区别 1108. python中merge后文件莫名变得非常大9. file - Python如何读文件内容修改后写回原文件10. javascript - 为什么 process.stdin 会有 write 方法◔ ‸◔?
排行榜