编写一个读取正整数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的值。
答案 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))]