n個骰子的點數以及出現概率

2021-07-13 10:32:09 字數 694 閱讀 9345

//把n個骰子扔在地上,所有骰子朝上一面的點數之和為s。輸入n,列印出s的所有可能

//的值出現的概率。

#include "stdio.h"

#include "cmath"

#include "helper.h"

using namespace std;

//方法1:遞迴思路。把骰子分成兩堆,一堆1個,另一堆n-1個。

int dicesu***ce = 6;

void probabilityrecursively(int current, int sum,

}void printallprobability0(int n)

//兩個陣列交替進行,有點類似動態規劃的意思。

void printallprobability1(int n)

int flag = 0;

for (int i = 1; i <= dicesu***ce; i++)

for (int k = 2; k <= n; ++k)

flag = 1 - flag;

} int totalprobability = pow(dicesu***ce, n);

for (int i = n; i <= maxsum; i++)

}int main()

這道題很棒!

43 n 個骰子的點數及出現的概率

題目描述 把n 個骰子扔在地上,所有骰子朝上一面的點數之和為s,輸入n,列印 出s 的所有可能出現的概率 思路 遞迴一般是自頂向下的分析求解,而迴圈則是自底向上,占用更少的空間 和更少的時間,效能較好。定義乙個二維陣列,第一次擲骰子有 6 種可能,第一 個骰子投完的結果存到 probabilitie...

60 n個骰子的點數概率

把n個骰子扔在地上,所有骰子朝上一面的點數之和為s。輸入n,列印出s的所有可能的值出現的概率。你需要用乙個浮點數陣列返回答案,其中第 i 個元素代表這 n 個骰子所能擲出的點數集合中第 i 小的那個的概率。示例 1 輸入 1 輸出 0.16667,0.16667,0.16667,0.16667,0....

n個骰子的點數

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