一个彩票的问题

[复制链接]
查看11 | 回复8 | 2005-10-30 17:05:33 | 显示全部楼层 |阅读模式
彩票,49选6
从1到49,任意选6个号码,这6个号码之和为150的概率是多少?
要求不用穷举。最好用数学的方法。

回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
本帖最后由 newkid 于 2012-2-3 06:05 编辑
为什么不能用穷尽法?
C(6,49)=13983816, 确实有点多。

回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
穷举很容易, 但是耗时, 想找个数学方法, 快点
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
本帖最后由 jimmyshenghua 于 2012-2-3 11:30 编辑
没玩过彩票,想问一下49个数选6个,数字是1到49?
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
有没有6分查找法啊?
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
其实算C(5,49)就可以,最后一位可以用推算的。
WITH n AS (SELECT LEVEL n,POWER(2,LEVEL-1) bit FROM DUAL CONNECT BY LEVEL t1.n and t3.n > t2.n and t4.n > t3.n and t5.n > t4.n and t6.n > t5.n
5* and t1.n + t2.n + t3.n + t4.n + t5.n + t6.n = 150
SQL> /
COUNT(1)
----------
165772
1 row selected.
Elapsed: 00:00:22.71
SQL>

回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
上次qinyun不是问3个数之和等于200的,最后一个是不用算的
所以7楼可以少一层,newkid的递归慢可能前面不能用的太多...
回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
我写的确实有重复,去除重复就更慢了:
WITH n AS (SELECT LEVEL n,POWER(2,LEVEL-1) bit FROM DUAL CONNECT BY LEVEL t1.n and t3.n > t2.n and t4.n > t3.n and t5.n > t4.n
and 150- (t1.n + t2.n + t3.n + t4.n + t5.n) between 1 and 49
AND 150- (t1.n + t2.n + t3.n + t4.n + t5.n) NOT IN (t1.n , t2.n , t3.n , t4.n , t5.n);

COUNT(DISTINCTT1.BIT+T2.BIT+T3.BIT+T4.BIT+T5.BIT+POWER(2,150-T1.N-T2.N-T3.N-T4.N-T5.N-1))
-----------------------------------------------------------------------------------------

165772
Elapsed: 00:00:08.35

回复

使用道具 举报

千问 | 2005-10-30 17:05:33 | 显示全部楼层
newkid 发表于 2012-2-4 11:57
我写的确实有重复,去除重复就更慢了:
WITH n AS (SELECT LEVEL n,POWER(2,LEVEL-1) bit FROM DUAL CONNE ...

技术讨论与骂街最大的区别是,即使承认失误也不影响其地位和他人的信任
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

主题

0

回帖

4882万

积分

论坛元老

Rank: 8Rank: 8

积分
48824836
热门排行