早教吧 育儿知识 作业答案 考试题库 百科 知识分享

如何将一个值概率分布到几个值里,但是有最小,最大值的控制例如,我有一个值100我想把它随机分到5个值A,B,C,D,E上,但是每个值控制在10~35之间这个5个值在按照这个区间分配之后,仍然能够总和

题目详情
如何将一个值概率分布到几个值里,但是有最小,最大值的控制
例如,我有一个值100
我想把它随机分到5个值A,B,C,D,E上,但是每个值控制在10~35之间
这个5个值在按照这个区间分配之后,仍然能够总和为100
请教一下,这个算法应该如何设计呢?
▼优质解答
答案和解析
这个好办啊,你的这五个随机值只有4个是随机的,因为和是100.
你只要产生4个随机值,让他们都在10~35之间,最后一个值用100减一下就行了.如果算出结果,最后一个值不是在10~35之间的话,就舍弃,重新来一次,直到最后的值满足条件为止.产生10~35的方法是 rand()%26+10