Python版微信红包分配算法


Posted in Python onMay 04, 2015

红包分配算法代码实现发给大家,祝红包大丰收!

#coding=gbk
import random
import sys

#print random.randint(0, 99)

#print "====", random.uniform(0, 0.99)

def calRandomValue(min, max, total, num):
print min, max, total, num
total = float(total)
num = int(num)
min = 0.01
if(num return
if num == 1:
print "第%d个人拿到红包数为:%.2f" %(num, total)
return

i = 1
total_money = total

#rtotal = (total*100 - min*num*100)/100
while( i max = total_money - min*(num- i)
k = int((num-i)/2)
if num -i k = num -i
max = max/k
monney = random.randint(int(min*100), int(max*100))
monney = float(monney)/100
total_money = total_money - monney

print "第%d个人拿到红包数为:%.2f, 余额为: %.2f" %(i, monney, total_money)
i += 1

print "第%d个人拿到红包数为:%.2f, 余额为: %.2f" %(i, total_money, 0.0)

if __name__ == "__main__":
min = sys.argv[1]
max = sys.argv[2]
total = sys.argv[3]
num = sys.argv[4]
calRandomValue(min, max, total, num)

python 2.py 0.01 10 20 30
0.01 10 20 30
第1个人拿到红包数为:1.34, 余额为: 18.66
第2个人拿到红包数为:1.06, 余额为: 17.60
第3个人拿到红包数为:1.08, 余额为: 16.52
第4个人拿到红包数为:0.98, 余额为: 15.54
第5个人拿到红包数为:0.88, 余额为: 14.66
第6个人拿到红包数为:0.48, 余额为: 14.18
第7个人拿到红包数为:0.26, 余额为: 13.92
第8个人拿到红包数为:0.90, 余额为: 13.02
第9个人拿到红包数为:0.12, 余额为: 12.90
第10个人拿到红包数为:0.41, 余额为: 12.49
第11个人拿到红包数为:0.43, 余额为: 12.06
第12个人拿到红包数为:0.63, 余额为: 11.43
第13个人拿到红包数为:0.36, 余额为: 11.07
第14个人拿到红包数为:0.25, 余额为: 10.82
第15个人拿到红包数为:1.38, 余额为: 9.44
第16个人拿到红包数为:0.17, 余额为: 9.27
第17个人拿到红包数为:0.79, 余额为: 8.48
第18个人拿到红包数为:0.52, 余额为: 7.96
第19个人拿到红包数为:0.44, 余额为: 7.52
第20个人拿到红包数为:1.15, 余额为: 6.37
第21个人拿到红包数为:0.13, 余额为: 6.24
第22个人拿到红包数为:0.76, 余额为: 5.48
第23个人拿到红包数为:1.32, 余额为: 4.16
第24个人拿到红包数为:0.80, 余额为: 3.36
第25个人拿到红包数为:0.16, 余额为: 3.20
第26个人拿到红包数为:0.27, 余额为: 2.93
第27个人拿到红包数为:1.82, 余额为: 1.11
第28个人拿到红包数为:0.45, 余额为: 0.66
第29个人拿到红包数为:0.27, 余额为: 0.39
第30个人拿到红包数为:0.39, 余额为: 0.00

以上所述就是本文的全部内容了,希望大家能够喜欢。

Python 相关文章推荐
Python程序设计入门(3)数组的使用
Jun 16 Python
Python实现从订阅源下载图片的方法
Mar 11 Python
python清理子进程机制剖析
Nov 23 Python
python自动查询12306余票并发送邮箱提醒脚本
May 21 Python
Python生成短uuid的方法实例详解
May 29 Python
python-str,list,set间的转换实例
Jun 27 Python
python list转矩阵的实例讲解
Aug 04 Python
centos6.8安装python3.7无法import _ssl的解决方法
Sep 17 Python
python 申请内存空间,用于创建多维数组的实例
Dec 02 Python
opencv之为图像添加边界的方法示例
Dec 26 Python
Python 通过爬虫实现GitHub网页的模拟登录的示例代码
Aug 17 Python
Python中的嵌套循环详情
Mar 23 Python
用Python编写一个每天都在系统下新建一个文件夹的脚本
May 04 #Python
用Python编写生成树状结构的文件目录的脚本的教程
May 04 #Python
使用Python脚本将Bing的每日图片作为桌面的教程
May 04 #Python
详解Python的Django框架中的通用视图
May 04 #Python
在Python中使用matplotlib模块绘制数据图的示例
May 04 #Python
使用Python生成url短链接的方法
May 04 #Python
python实现bucket排序算法实例分析
May 04 #Python
You might like
PHP实现把数字ID转字母ID
2013/08/12 PHP
PHP读取并输出XML文件数据的简单实现方法
2017/12/22 PHP
web css实现整站样式互相切换
2013/10/29 Javascript
JS正则替换掉小括号及内容的方法
2016/11/29 Javascript
jQuery实现给input绑定回车事件的方法
2017/02/09 Javascript
谈谈VUE种methods watch和compute的区别和联系
2017/08/01 Javascript
如何理解Vue的作用域插槽的实现原理
2017/08/19 Javascript
JS如何设置元素样式的方法示例
2017/08/28 Javascript
Angular4编程之表单响应功能示例
2017/12/13 Javascript
Vue2.0 实现单选互斥的方法
2018/04/13 Javascript
webpack项目轻松混用css module的方法
2018/06/12 Javascript
Angular中的ng-template及angular 使用ngTemplateOutlet 指令的方法
2018/08/08 Javascript
Vue事件修饰符native、self示例详解
2019/07/09 Javascript
让mocha支持ES6模块的方法实现
2020/01/14 Javascript
JavaScript 禁止用户保存图片的实现代码
2020/04/28 Javascript
Nest.js环境变量配置与序列化详解
2021/02/21 Javascript
[01:03:18]DOTA2-DPC中国联赛 正赛 RNG vs Dynasty BO3 第一场 1月29日
2021/03/11 DOTA
python基础教程之自定义函数介绍
2014/08/29 Python
深入Python函数编程的一些特性
2015/04/13 Python
python kmeans聚类简单介绍和实现代码
2018/02/23 Python
python中使用psutil查看内存占用的情况
2018/06/11 Python
ubuntu 18.04搭建python环境(pycharm+anaconda)
2019/06/14 Python
python的移位操作实现详解
2019/08/21 Python
python zip,lambda,map函数代码实例
2020/04/04 Python
Python使用Pygame绘制时钟
2020/11/29 Python
python 读取yaml文件的两种方法(在unittest中使用)
2020/12/01 Python
纯CSS3编写的的精美动画进度条(无flash/无图像/无脚本/附源码)
2013/01/07 HTML / CSS
英国的潮牌鞋履服饰商店:size?
2019/03/26 全球购物
牵手50台湾:专为黄金岁月的单身人士而设的交友网站
2021/02/18 全球购物
学期自我评价
2014/01/27 职场文书
森林防火宣传标语
2014/06/27 职场文书
土建施工员岗位职责
2014/07/16 职场文书
初中团委工作总结
2015/08/13 职场文书
python 实现mysql自动增删分区的方法
2021/04/01 Python
Go 自定义package包设置与导入操作
2021/05/06 Golang
MySQL中in和exists区别详解
2021/06/03 MySQL