100分讨论概率问题 用穷举法 有A.B.C.D四人 两张红5肯定要在四人手里. 分别是: A B C D 2 1 1 1 1 1 1 2 1 1 1 1 2 1 1 2 难道错了么? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 to:Uncommon(土匪) 是啊.两床牌.红5 就是红桃5. 顺便告诉你一床牌52张.底牌八张. 额呵呵 没有拿底牌, < 2/(108/4)有拿底牌, > 2/(100/4)如果理想情况,你可以说底牌中的8张也是机会均等,但是实际且不然,试想一下,如果你连续拿8张牌和从中抽取8张牌所获得某张牌的概率是否一致 刚写了一个测试程序,没有考虑底牌的情况,我们这里的升级是一副牌,所以俩红五我当成红桃与方块5了。运行结果:测试次数1000成功次数12各位按照你们的扑克规则改一下,然后找个快些的机器狂跑以下,看看结果,然后贴出来毕竟实践是检验真理的唯一标准啊!!!嘿嘿=========================================================================private void button1_Click(object sender, System.EventArgs e){//A代表黑桃,B代表红桃,C代表梅花,D代表方块 AA代表大王,BB代表小王 string[] squeezer = new string[54] {"A01","A02","A03","A04","A05","A06","A07","A08","A09","A10","A11","A12","A13","B01","B02","B03","B04","B05","B06","B07","B08","B09","B10","B11","B12","B13","C01","C02","C03","C04","C05","C06","C07","C08","C09","C10","C11","C12","C13","D01","D02","D03","D04","D05","D06","D07","D08","D09","D10","D11","D12","D13","AA","BB"};int runCount = 1000;int trueCount = 0;string[] mySqueezer = new string[12];for (int i=0;i<runCount;i++){for (int j=0;j<12;j++){int intRandom = new Random().Next(0,54);System.Threading.Thread.Sleep(10);mySqueezer[j] = squeezer[intRandom].ToString();}if (Array.IndexOf(mySqueezer,"B05") != -1 && Array.IndexOf(mySqueezer,"D05") != -1) {trueCount += 1;}}MessageBox.Show("测试次数为:"+runCount.ToString()+"。\r\n"+ "成功次数为:"+trueCount.ToString(), "提示信息",MessageBoxButtons.OK, MessageBoxIcon.Information);} 有意思,我也说说。这个问题还要考虑是否有意识的留住红5(对于有权利拿底牌的人)如果没有意识一定留住红5,那么有没有拿底牌,概率是一样的。没有意识留住红5的情况:设红5在底牌中的张数为A0=0、A1=1、A2=2、A3=3、A4=4,某个人拿到两张以上的红5的概率为B则问题为求所有P{B|An}之和。其中, P{B|An}= P{AnB}/P{An}, n=0、1、2、3、4 P{An}= 4张红5取n张的取法*其他104张牌中取8-n张牌的取法/108张牌取8张牌总共的取法。P{AnB}=(4-n)张红5取2张的取法*(100-4+n)张牌中取25-2张牌的取法/100张牌取25张的取法组和数懒得算啊 :P有意识要留住红5的情况:设还没人拿起底牌时红5在底牌中的张数为A0、A1、A2、A3、A4,某个人拿到两张以上的红5的概率为B某人有权利拿底牌时:底牌数为A0时概率同上,为A2、A3、A4时 概率为p{A2}、P{A3}、P{A4}底牌数为A1时P{A1}同上P{AnB}=(4-n)张红5取1张的取法*(100-4+n)张牌中取25-1张牌的取法/100张牌取25张的取法求和没有权利拿底牌时:底牌数为A0、A1时同上,底牌数为A2、A3、A4时为0求和以上算法只考虑取到刚好2张红5的情况。 我也发表两句:对于概率的计算我想大概是这样的:四人两幅牌108张,留下底牌8张 1、若底牌中不含两张红五,则:A人从100张牌中拿25张,组合有a种方法,然后在从106(因为底牌中不含两张红五108=106)挑出8张一共有b种方法,总方法为n1=a*b种。 拿红五时为98张挑23张牌(加上两张红五就是25张)m种方法 最后m÷n1=x1,x为拿红五的概率。 2、若底牌中含一张红五,那么A人手中必须拿另一张红五,则就是,A人从100张牌中拿25张,组合有a种方法,从106张中选7张(因为底牌中含一张红五)方法有b种,总方法n2=a*b 拿红五时 A人从99张中挑24张(因为A人手中必须拿另一张红五)有m种方法 最后x2=m÷n2 3、若底牌中有两张红五则:A人从100张牌中拿25张,组合有a种方法,然后在106(因为底牌中有两张红五)中挑出6张一共有b种方法,总方法为n3=a*b种。 A人从100张牌中拿25张,组合有a种方法x3=b种方法。三次的概率相加x=x1+x2+x3 derek的思路正确,就是忽略了106张牌的排列啊,也就是106的排列组合。另外我的方法也有漏洞:两副牌会有两张一样的,还有不拿底牌,也要算到所有揭牌可能的种类里面。如果提到庄家,就有牵扯到了,胜的几率。 楼主的想法不错,不过还是错了.你把两个红五看成一个了.举例来说 a b1 2a b2 1这也是一种情况呀. lanalucky(绿鬓如云):derek的思路正确,就是忽略了106张牌的排列啊,也就是106的排列组合。 我已说过: 除掉两张红桃5,剩下106张牌,而这106张牌如何排列并不影响两张红桃5的出现,所以假设106张牌已排列好。 也就是说无需考虑这106张牌的排列情况。 97ce_twinkle(毛毛虫) :根据楼主后面的描述(10种非配方案),可以判定楼主所谓的红5,应该是同一花色的,所以我就假设为红桃5。 根据kerlw(科尔)的说法:因为升级不是108张牌平均分配到4个人手里,有一个人有拿底牌的权利。其实是每个人拿了25张,还有8张只有一个人有权利拿起来。没有人拿起底牌之前:底牌里有0、1、2张红桃5的概率分别为 (99*100)/(108*107)、(16*100)/(108*107)、56/(108*107),这些是按组合数算出来的。底牌有0张红桃5的情况下,大家的概率是相等的。每个人都是(24*25)/(100*99)底牌有2张红桃5的情况下,只有一个人拿得到红桃5,而他拿到红桃5的概率就是底牌有2张红桃5的概率:56/(108*107)其他人概率为0底牌有1张是红桃5的情况下其他三个人的概率是0,而另外那个人拿到两个红桃的概率是:25/100=0.25 我的想法是: 1, 对于某张牌而言,从108张牌中抽中它的概率就是1/108,2, 对闲家而言共有25次机会,庄家有33次机会,故在108张牌中得到某张牌的概率是25/108 和33/1083, 上面已经得到一张“H5”的概率了,再算另一张,据定义,现在只能从107张牌中抽取另一张“H5”了,所以是1/1074, 同2,闲家还有24次机会,庄家有32次,所以是24/108 和32/1085, 两个事件同时发生,概率相乘,故最后答案是: 闲家得到2张H5的概率是 (25/108)*(24/107) = 0.05192 庄家得到2张H5的概率是 (33/108)*(32/107) = 0.09138 板块 专家分 信誉分 等级 .NET技术 4873 100 扩充话题 391 100 Oracle 290 100 Web 开发 20 100 移动平台 10 100 aspxgridview如何动态加行 隐藏滚动条 控件移动的动画,有震动效果,哪个函数,可以让振幅减小? 超级平凡简单的问题 c# 两个exe如何传递参数? 用C#怎么实现定时启动一个服务? Datatime类的问题 在C#中用什么方法获取select语句执行所影响的行数啊!谢谢啦! 用C#如何断开连接到本机共享目录的会话 求教一个webbrowser控件刷新的问题 正在写坦克游戏,请问大家如何在程序中去掉图片的底色。 急求windows项目的一ListBox使用的完整程序代码!在线~~~~
是啊.两床牌.红5 就是红桃5.
顺便告诉你一床牌52张.底牌八张.
额呵呵
有拿底牌, > 2/(100/4)如果理想情况,你可以说底牌中的8张也是机会均等,但是实际且不然,试想一下,如果你连续拿8张牌和从中抽取8张牌所获得某张牌的概率是否一致
俩红五我当成红桃与方块5了。运行结果:
测试次数1000
成功次数12各位按照你们的扑克规则改一下,然后找个快些的机器狂跑以下,
看看结果,然后贴出来毕竟实践是检验真理的唯一标准啊!!!嘿嘿
=========================================================================
private void button1_Click(object sender, System.EventArgs e)
{
//A代表黑桃,B代表红桃,C代表梅花,D代表方块 AA代表大王,BB代表小王
string[] squeezer = new string[54] {"A01","A02","A03","A04","A05","A06","A07","A08","A09","A10","A11","A12","A13",
"B01","B02","B03","B04","B05","B06","B07","B08","B09","B10","B11","B12","B13",
"C01","C02","C03","C04","C05","C06","C07","C08","C09","C10","C11","C12","C13",
"D01","D02","D03","D04","D05","D06","D07","D08","D09","D10","D11","D12","D13",
"AA","BB"};
int runCount = 1000;
int trueCount = 0;
string[] mySqueezer = new string[12];
for (int i=0;i<runCount;i++)
{
for (int j=0;j<12;j++)
{
int intRandom = new Random().Next(0,54);
System.Threading.Thread.Sleep(10);
mySqueezer[j] = squeezer[intRandom].ToString();
}
if (Array.IndexOf(mySqueezer,"B05") != -1 && Array.IndexOf(mySqueezer,"D05") != -1)
{
trueCount += 1;
}
}
MessageBox.Show("测试次数为:"+runCount.ToString()+"。\r\n"+
"成功次数为:"+trueCount.ToString(),
"提示信息",MessageBoxButtons.OK, MessageBoxIcon.Information);
}
如果没有意识一定留住红5,那么有没有拿底牌,概率是一样的。没有意识留住红5的情况:设红5在底牌中的张数为A0=0、A1=1、A2=2、A3=3、A4=4,某个人拿到两张以上的红5的概率为B
则问题为求所有P{B|An}之和。其中, P{B|An}= P{AnB}/P{An}, n=0、1、2、3、4
P{An}= 4张红5取n张的取法*其他104张牌中取8-n张牌的取法/108张牌取8张牌总共的取法。
P{AnB}=(4-n)张红5取2张的取法*(100-4+n)张牌中取25-2张牌的取法/100张牌取25张的取法
组和数懒得算啊 :P有意识要留住红5的情况:设还没人拿起底牌时红5在底牌中的张数为A0、A1、A2、A3、A4,某个人拿到两张以上的红5的概率为B某人有权利拿底牌时:
底牌数为A0时概率同上,为A2、A3、A4时 概率为p{A2}、P{A3}、P{A4}
底牌数为A1时
P{A1}同上
P{AnB}=(4-n)张红5取1张的取法*(100-4+n)张牌中取25-1张牌的取法/100张牌取25张的取法
求和没有权利拿底牌时:
底牌数为A0、A1时同上,
底牌数为A2、A3、A4时为0
求和以上算法只考虑取到刚好2张红5的情况。
1、若底牌中不含两张红五,则:A人从100张牌中拿25张,组合有a种方法,然后在从106(因为底牌中不含两张红五108=106)挑出8张一共有b种方法,总方法为n1=a*b种。
拿红五时为98张挑23张牌(加上两张红五就是25张)m种方法
最后m÷n1=x1,x为拿红五的概率。
2、若底牌中含一张红五,那么A人手中必须拿另一张红五,则就是,A人从100张牌中拿25张,组合有a种方法,从106张中选7张(因为底牌中含一张红五)方法有b种,总方法n2=a*b
拿红五时 A人从99张中挑24张(因为A人手中必须拿另一张红五)有m种方法
最后x2=m÷n2
3、若底牌中有两张红五则:A人从100张牌中拿25张,组合有a种方法,然后在106(因为底牌中有两张红五)中挑出6张一共有b种方法,总方法为n3=a*b种。
A人从100张牌中拿25张,组合有a种方法x3=b种方法。
三次的概率相加x=x1+x2+x3
另外我的方法也有漏洞:两副牌会有两张一样的,还有不拿底牌,也要算到所有揭牌可能的种类里面。
如果提到庄家,就有牵扯到了,胜的几率。
举例来说
a b
1 2
a b
2 1
这也是一种情况呀.
我已说过:
除掉两张红桃5,剩下106张牌,而这106张牌如何排列并不影响两张红桃5的出现,所以假设106张牌已排列好。
也就是说无需考虑这106张牌的排列情况。 97ce_twinkle(毛毛虫) :根据楼主后面的描述(10种非配方案),可以判定楼主所谓的红5,应该是同一花色的,所以我就假设为红桃5。
因为升级不是108张牌平均分配到4个人手里,有一个人有拿底牌的权利。其实是每个人拿了25张,还有8张只有一个人有权利拿起来。没有人拿起底牌之前:
底牌里有0、1、2张红桃5的概率分别为 (99*100)/(108*107)、(16*100)/(108*107)、
56/(108*107),这些是按组合数算出来的。底牌有0张红桃5的情况下,大家的概率是相等的。
每个人都是(24*25)/(100*99)底牌有2张红桃5的情况下,只有一个人拿得到红桃5,而他拿到红桃5的概率就是底牌有2张红桃5的概率:56/(108*107)
其他人概率为0底牌有1张是红桃5的情况下
其他三个人的概率是0,
而另外那个人拿到两个红桃的概率是:25/100=0.25
2, 对闲家而言共有25次机会,庄家有33次机会,故在108张牌中得到某张牌的概率是25/108 和33/1083, 上面已经得到一张“H5”的概率了,再算另一张,据定义,现在只能从107张牌中抽取另一张“H5”了,所以是1/107
4, 同2,闲家还有24次机会,庄家有32次,所以是24/108 和32/1085, 两个事件同时发生,概率相乘,故最后答案是:
闲家得到2张H5的概率是 (25/108)*(24/107) = 0.05192
庄家得到2张H5的概率是 (33/108)*(32/107) = 0.09138
.NET技术 4873 100
扩充话题 391 100
Oracle 290 100
Web 开发 20 100
移动平台 10 100