# 感激不尽五体投地...能否再请教一题脑力激荡--乐透彩券...

Posted by 小Sam on October 28, 1998 at 19:19:11:

In Reply to: 嗯，两秒搞定 posted by 小吴 on October 28, 1998 at 15:54:19:

万分感谢您的指点 ,虽然我真的不懂原理 ,但是依样画葫芦也可以达到我要的 ,
若有时间可否稍做白话解释其原理?
另有一题:
目前在帮客户跑一乐透乱数 ,
条件:1.每张彩券有６组号码,每组号码有两位数(00~99)
2.每张彩券本身每组号码不能重复 ,
例如:00 00 01 02 03 04(不行), 00 01 02 03 04 05(可以）
3.每张彩券６组号码不能和随意一张６组号码重复(顺序不管)
例如:00 01 02 03 04 05 和 05 04 03 02 01 00 （不行)
我目前的作法是:
1.两个数字一组共六组,第一组不能大于或等于第二组,
第二组不能大于或等于第三组....依此推到第六组 .
2.出现的范围会在000102030405到949596979899之间
3.求得这六组依大小排列的号码后再将六组乱排顺序,即成一张彩票.
例如:000102030405 --> 030504020100(彩票一张)
4.因此跑到949596979899时每张彩票都能符合条件
但缺点是 :
1.总共可以做出几张彩票呢?(是94*95*96*97*98*99张吗?)
2.目前客户要800万张 ,且必须要DoEvents以便随时Show出每张号码 ,
依这进度,跑了四天 ,前四码才到0011多而已（差不多是全部符合的
百分之一)照这样推算 ,真要一年才跑得完全部吗?
(我并没有让它每次递增1的跑 ,若019596979899下一笔它会直接跳
020304050607,光这一跳就可以少跑好几十亿次 ,但要跑完还是遥遥
无期啊!!)
3.目前我折衷作法是,从000102030405起,每张筛选出来符合的彩票中
有五分之一的机率会被取用,故最多仅需跑出符合条件800*5(万)张即
可,（约一星期内可跑完)但缺点是每张彩卷一定都会有00这组号码,
因为落点都在靠近 000102030405,而我又不确定总共能产生几张 ,所
以不敢断然在 000102030405~949596979899间平均分配这800万张......

谢谢您看完,若有错误请指正 ,若您有更好的建议请一定快快
通知我....万分感谢 ..... 小Sam

Follow Ups: