需要帮助开发子范围

时间:2014-03-03 03:35:30

标签: python random probability

编写一个读取正整数N的程序并输出N的随机序列 在[1; 100]范围内的整数,使得序列中的每个整数x都是根据生成的 以下概率分布。首先,选择子范围用于x,具有子范围 [1; 25]选择概率为1/8,子范围[26; 50]概率为y 1/2,子范围[51; 75]概率为1/4,子范围[76] ; 100]概率为1 / 8.Once 选择了x的子范围(例如,[1; 25]),然后从该子范围随机均匀地选取x的值。

1 个答案:

答案 0 :(得分:1)

让它缩短。您的范围概率比为1:4:2:1。所以......

H = range(1,26)+range(26,51)*4+range(51,76)*2+range(76,101)

然后使用random.randrange函数。

from random import randrange
a  = H[randrange(len(H))]