Python版微信紅包分配算法
紅包分配算法代碼實(shí)現(xiàn)發(fā)給大家,祝紅包大豐收!
#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個(gè)人拿到紅包數(shù)為:%.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個(gè)人拿到紅包數(shù)為:%.2f, 余額為: %.2f" %(i, monney, total_money) i += 1 print "第%d個(gè)人拿到紅包數(shù)為:%.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個(gè)人拿到紅包數(shù)為:1.34, 余額為: 18.66
第2個(gè)人拿到紅包數(shù)為:1.06, 余額為: 17.60
第3個(gè)人拿到紅包數(shù)為:1.08, 余額為: 16.52
第4個(gè)人拿到紅包數(shù)為:0.98, 余額為: 15.54
第5個(gè)人拿到紅包數(shù)為:0.88, 余額為: 14.66
第6個(gè)人拿到紅包數(shù)為:0.48, 余額為: 14.18
第7個(gè)人拿到紅包數(shù)為:0.26, 余額為: 13.92
第8個(gè)人拿到紅包數(shù)為:0.90, 余額為: 13.02
第9個(gè)人拿到紅包數(shù)為:0.12, 余額為: 12.90
第10個(gè)人拿到紅包數(shù)為:0.41, 余額為: 12.49
第11個(gè)人拿到紅包數(shù)為:0.43, 余額為: 12.06
第12個(gè)人拿到紅包數(shù)為:0.63, 余額為: 11.43
第13個(gè)人拿到紅包數(shù)為:0.36, 余額為: 11.07
第14個(gè)人拿到紅包數(shù)為:0.25, 余額為: 10.82
第15個(gè)人拿到紅包數(shù)為:1.38, 余額為: 9.44
第16個(gè)人拿到紅包數(shù)為:0.17, 余額為: 9.27
第17個(gè)人拿到紅包數(shù)為:0.79, 余額為: 8.48
第18個(gè)人拿到紅包數(shù)為:0.52, 余額為: 7.96
第19個(gè)人拿到紅包數(shù)為:0.44, 余額為: 7.52
第20個(gè)人拿到紅包數(shù)為:1.15, 余額為: 6.37
第21個(gè)人拿到紅包數(shù)為:0.13, 余額為: 6.24
第22個(gè)人拿到紅包數(shù)為:0.76, 余額為: 5.48
第23個(gè)人拿到紅包數(shù)為:1.32, 余額為: 4.16
第24個(gè)人拿到紅包數(shù)為:0.80, 余額為: 3.36
第25個(gè)人拿到紅包數(shù)為:0.16, 余額為: 3.20
第26個(gè)人拿到紅包數(shù)為:0.27, 余額為: 2.93
第27個(gè)人拿到紅包數(shù)為:1.82, 余額為: 1.11
第28個(gè)人拿到紅包數(shù)為:0.45, 余額為: 0.66
第29個(gè)人拿到紅包數(shù)為:0.27, 余額為: 0.39
第30個(gè)人拿到紅包數(shù)為:0.39, 余額為: 0.00
以上所述就是本文的全部?jī)?nèi)容了,希望大家能夠喜歡。
- 基于python實(shí)現(xiàn)微信收紅包自動(dòng)化測(cè)試腳本(測(cè)試用例)
- Python+Appium實(shí)現(xiàn)自動(dòng)搶微信紅包
- 用60行代碼實(shí)現(xiàn)Python自動(dòng)搶微信紅包
- python生成隨機(jī)紅包的實(shí)例寫法
- Python實(shí)現(xiàn)的微信紅包提醒功能示例
- Python自動(dòng)搶紅包教程詳解
- python 實(shí)現(xiàn)紅包隨機(jī)生成算法的簡(jiǎn)單實(shí)例
- python實(shí)現(xiàn)紅包裂變算法
- Java 入門圖形用戶界面設(shè)計(jì)之列表框JList
相關(guān)文章
Python使用Pycrypto庫(kù)進(jìn)行RSA加密的方法詳解
RSA加密算法是一種強(qiáng)大的公鑰加密算法,安全性很高,這里我們來(lái)看一下Python使用Pycrypto庫(kù)進(jìn)行RSA加密的方法詳解,需要的朋友可以參考下2016-06-06
django 連接數(shù)據(jù)庫(kù)出現(xiàn)1045錯(cuò)誤的解決方式
這篇文章主要介紹了django 連接數(shù)據(jù)庫(kù)出現(xiàn)1045錯(cuò)誤的解決方式,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過(guò)來(lái)看看吧2020-05-05
Python動(dòng)態(tài)規(guī)劃之零錢兌換問(wèn)題詳解
這篇文章主要介紹了Python動(dòng)態(tài)規(guī)劃之零錢兌換問(wèn)題詳解,這次我們就按照套路模板,再來(lái)剖析一道經(jīng)典動(dòng)規(guī)題目零錢兌換,計(jì)算并返回可以湊成總金額所需的 最少的硬幣個(gè)數(shù) 如果沒有任何一種硬幣組合能組成總金額,返回-1,需要的朋友可以參考下2023-11-11
Python連接Hadoop數(shù)據(jù)中遇到的各種坑(匯總)
這篇文章主要介紹了Python連接Hadoop數(shù)據(jù)中遇到的各種坑,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-04-04
Python破解excel進(jìn)入密碼的過(guò)程詳解
這篇文章主要為大家介紹了如何利用Python破解excel進(jìn)入密碼,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)Python有一定幫助,感興趣的可以動(dòng)手試一試2022-03-03
Python基于checksum計(jì)算文件是否相同的方法
這篇文章主要介紹了Python基于checksum計(jì)算文件是否相同的方法,涉及Python針對(duì)二進(jìn)制文件的讀取與判定技巧,需要的朋友可以參考下2015-07-07
django框架中ajax的使用及避開CSRF 驗(yàn)證的方式詳解
這篇文章主要介紹了django框架中ajax的使用及避開CSRF 驗(yàn)證的方式,結(jié)合實(shí)例形式分析了Django框架ajax后臺(tái)交互與排除驗(yàn)證csrf相關(guān)操作技巧,需要的朋友可以參考下2019-12-12
在?Python?中使用變量創(chuàng)建文件名的方法
這篇文章主要介紹了在?Python?中使用變量創(chuàng)建文件名,格式化的字符串文字使我們能夠通過(guò)在字符串前面加上 f 來(lái)在字符串中包含表達(dá)式和變量,本文給大家詳細(xì)講解,需要的朋友可以參考下2023-03-03

