第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

一個抽獎的算法

一個抽獎的算法

牛魔王的故事 2019-05-21 09:53:53
求一個抽獎的算法,在下面數(shù)組的8個對象中抽獎,根據(jù)后面的中獎概率,返回a,b,c中獎概率這個可以不遵循全加起來為100%[{"a",20.00%},{"b",20.00%},{"c",20.00%},{"d",10.00%},{"e",10.00%},{"f",10.00%},{"g",10.00%},{"h",0.05%},]
查看完整描述

2 回答

?
暮色呼如

TA貢獻1853條經(jīng)驗 獲得超9個贊

程序思路:1.中獎概率的理解:概率越大,被抽中的幾率就越大,假設(shè)字母a-h(可以有重復(fù))總個數(shù)為S,字母a的的個數(shù)為A,那么字母a被抽中的概率為:p=A/S2.如題目所給出的字母對象及概率。假設(shè)字母a-h總個數(shù)為2000,那么根據(jù)概率,a應(yīng)為400個,b為400個,c為400個,d為200個,e為200個,f為200個,g為200個,h為1個。3.將所有字母想象成球,放在一個口袋里,隨機抽取。程序語言說明為,將字母全部存儲在一個數(shù)組里,每次隨機一個數(shù)作為下標(biāo),根據(jù)下標(biāo)所得的字母就是抽取的結(jié)果。簡單編程(python)
#usr/bin/python
#-*-coding=utf-8-*-
#初始化
data=[
["a",20.00%],
["b",20.00%],
["c",20.00%],
["d",10.00%],
["e",10.00%],
["f",10.00%],
["g",10.00%],
["h",0.05%],
]
#為了保證字母個數(shù)為非負(fù)整型,假設(shè)h為1個,總個數(shù)為2000個
all=2000
arr=[]
foriinrange(len(data)):
letter=data[i][0]
num=data[i][1]*all
forjinrange*(num):
arr.append(letter)
#產(chǎn)生一個隨機索引
index=random.randint(0,len(arr))
#根據(jù)隨機索引尋找字母
result=arr[index]
                            
查看完整回答
反對 回復(fù) 2019-05-21
  • 2 回答
  • 0 關(guān)注
  • 904 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號