N個骰子點數之和的分布

2021-06-09 23:09:47 字數 745 閱讀 5705

將n個均勻的骰子,扔在地上,求點數之和的分布。

因為是分布,自然是求n個篩子之和等於m的概率,p(m)

p(m) = fre(n,m)/sum

fre(n,m)是指n個骰子扔出m個點數的 總的可能情況,這個就相當於組合數,只是限制了每個骰子的點數在1-6之間。

sum是n個骰子扔地上所有可能情況之和。

因為每個骰子可能的點數在1-6之間,所以n個骰子組合的點數在n和6n之間,總共5n+1中可能。

所以對於每乙個x,滿足1<=x <=5n+1,只要求的x的n組合數,即可。

#includeusing namespace std;

void function(int times,int reduce,int &count)//times個骰子之和等於reduce的可能組合數,count是記錄組合數目的

for(int i=1;i<7;i++)//以下為遞迴過程

}int main()

while(num < 1);

cout

memset(time,0,num*5+1);

int sum = 0;

for(int i = num;i < 6*num+1;i++)

for(int j=0;jgetchar();

getchar();

return 0 ;

}

n個骰子的點數之和的次數

題目 把n個骰子扔在地上,所有骰子朝上一面的點數之和為s。輸入n,列印出s的所有可能的值出現的概率。解題思路 第一步,確定問題解的表示式。可將f n,s 表示n個骰子點數的和為s的排列情況總數。第二步,確定狀態轉移方程。n個骰子點數和為s的種類數隻與n 1個骰子的和有關。因為乙個骰子有六個點數,那麼...

n個骰子的點數

把n個骰子扔在地上,所有骰子朝上的一面的點數之和為s。輸入n,列印出s的所有可能的值和出現的概率。1 基於迴圈求骰子點數 2int g maxvalue 6 骰子的點數個數 3void printprobability int number number 為骰子個數49 int pprobabili...

n個骰子的點數

題目 把n個骰子扔在地上,所有骰子朝上一面的點數之和為s。輸入n,列印出s的所有可能的值出現的概率。方法一 遞迴 思路 設n個骰子某次投擲點數和為s的出現次數是f n,s 那麼,f n,s 等於n 1個骰子投擲的點數和為s 1 s 2 s 3 s 4 s 5 s 6時的次數的總和 f n s f n...