前几天在论坛上看到蘑菇兄的送漂活动,但是蘑菇苦于没有好的随机楼层抽取方法,我也看到前段时间的某次活动的随机楼层选择不是特别让人信服。我拿出一个思路,供大家讨论讨论。
其实有好几种方法,其中的思路大同小异,思路原理我不讲了,喜欢想的自己想。我直接讲最简单的一种方法。
方法:
1、在设定时间内的楼层有效,或者在楼主或者版主锁帖前有效,锁帖后不能回复,统计楼层数。
2、等待第二天或者当天的双色球抽奖结果(必须是在抽奖前锁帖统计好楼层数),双色球共会抽得7个球的;
3、以第一个球开始,依次抽取每个球的个位数,组成一个7位数,再拿这个7位数除以楼层数,取余数,即中奖楼层1。
4、以第二个球开始,依次抽取每个球的个位数,组成一个新的7位数,再拿这个7位数除以楼层数,取余数,即中奖楼层2。
依次循环,就可以抽取最多7个楼层。
如果抽奖发现同一个ID中2个楼层,那么第二中奖楼层就往下推一楼,一直推到没有中过奖的ID为止。
例如 1、活动结束是2013年10月3号晚上12点,那么在这个时间点之前的楼层才有效,或者是12点的时候锁帖,以锁帖前楼层有效,假定锁帖前共有2319个帖子回复。
2、等待第二天的双色球抽奖结果,假定双色球中奖号码是:03 12 16 17 18 27 08。
3、以第一个球开始抽取个位数,分别是:3 2 6 7 8 7 8,拿3267878/2319,就可以得到余数是407,那么407楼就是中奖楼层1.
4、以第二个球开始抽取个位数,分别是:2 6 7 8 7 8 3,拿2678783/2319,就可以得到余数是338,那么338楼就是中奖楼层2.
依次循环,可以抽取3~7个楼层。
如果抽奖发现同一个ID中2个楼层,那么第二中奖楼层就往下推一楼,一直推到没有中过奖的ID为止。
这个方法公平还是比较公平的,只是用一个源随机码来抽取7个楼层,还是不够随机的,不过我想应该不用那么严格和苛刻吧。当然如果大家有耐心,也可以用上证指数和深证指数相结合,每天得到一个随机数来算出一个楼层,当然那抽奖就要花上好几天时间了。
仅提供一个方法,欢迎大家拍砖。
|