看了吧友写的代码跑模拟,自己也写了一个,细节上略有出入,但是结果不变。
活动简介:
每轮抽奖10个奖品,其中1个是大奖,其它9个分别从6个奖池抽,第一个奖池3个,第二个奖池2个,其它奖池各1个
小奖是副产品,虽然每轮抽奖次数越多消耗的奖券越多,小奖对应的消耗也越多,但是主要目的还是抽大奖,我觉得这么一点消耗无需过多考虑
那么我模拟n次,记录出每次获得的大奖份数、消耗奖券数量、第几次获得的大奖,然后按次统计出一份大奖平均消耗奖券数量再进行排名,数量最少的即为最优。
每次模拟时,先随机打乱10个奖品,然后进行随机,程序在每次中大奖时进行记录,然后进行分析:
从第一个球开始,如果中大奖,那就在中大奖的球进行重置,如果采取开到第N个球就重置的策略,则剩下所有轮都需要进行重置,需要算上累计消耗的票和重置的票
在这种模拟方式下,一直开到大奖才重置策略等于开到第10个球重置
模拟结果为一直开到大奖才重置策略最优,每张票的性价比约为0.018,也就是约55张票开到一份大奖(加倍的算多份)
根据模拟结果来说,最好就是超过94张票再抽,本期已经抽过了剩下的票重置后不足94的可以考虑攒到下期,还能省一份重置的票


dalao









