lintcode 20 骰子求和

2022-03-29 14:14:49 字數 1001 閱讀 6415

扔 n 個骰子,向上面的數字之和為 s。給定 given n,請列出所有可能的 s 值及其相應的概率。

注意事項

you do not care about the accuracy of the result, we will help you to output results.

樣例給定 n = 1,返回 [ [1, 0.17], [2, 0.17], [3, 0.17], [4, 0.17], [5, 0.17], [6, 0.17]]。

標籤數學 動態規劃 概率

思路

利用動態規劃,用二維陣列 dp[i][j] 表示 i 顆骰子所能擲出點數為 j 的次數。

最後某點的次數除以總數,即投擲出此點的概率。

code

class solution 

long long total = powof6(n);

vector> dp(n + 1, vector(6 * n + 1, 0));

dp[1][1] = 1;

dp[1][2] = 1;

dp[1][3] = 1;

dp[1][4] = 1;

dp[1][5] = 1;

dp[1][6] = 1;

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

if (j - 2 > 0)

if (j - 3 > 0)

if (j - 4 > 0)

if (j - 5 > 0)

if (j - 6 > 0)

dp[i][j] = x1 + x2 + x3 + x4 + x5 + x6;}}

vector> result;

for (int i = n; i <= 6 * n; i++)

return result;

}long long powof6(int n)

return sum;

}};

Lintcode 20 骰子求和

扔 n個骰子,向上面的數字之和為 s。給定 given n,請列出所有可能的 s值及其相應的概率。樣例給定n 1,返回 1,0.17 2,0.17 3,0.17 4,0.17 5,0.17 6,0.17 思路 扔n個骰子數字和及概率相當於求前n 1個骰子和及概率與第n個骰子和及概率。1.當n 0,返...

lintcode 20 骰子求和 動態規劃

扔 n 個骰子,向上面的數字之和為 s。給定 given n,請列出所有可能的 s 值及其相應的概率。注意事項 you do not care about the accuracy of the result,we will help you to output results.您在真實的面試中是否...

lintcode 18 骰子求和

扔 n 個骰子,向上面的數字之和為 s。給定 n,請列出所有可能的 s值及其相應的概率。樣例 1 輸入 n 1 輸出 1,0.17 2,0.17 3,0.17 4,0.17 5,0.17 6,0.17 解釋 擲一次骰子,向上的數字和可能為1,2,3,4,5,6,出現的概率均為 0.17。樣例 2 輸...