扔
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,返回空
2.當n=1時,返回1-6概率0.17;
3.當n>1時,遞迴呼叫返回list
,對list的每乙個骰子和
(entry中的key)迴圈加1-6,作為新的key存到乙個map中,
①當map中不包含這個key時,map中插入概率等於1.0/6*
value(value是entry中的value)
②當map中包含這個key時,map中插入概率等於之前的概率+1.0/6*value
**如下:
public class solution
if(n ==1)
list = new arraylist>(map.entryset());
return list;
}elseelse
map.put(tempkey,tempvalue);}}
list = new arraylist>(map.entryset());
return list;}}
}
lintcode 20 骰子求和
扔 n 個骰子,向上面的數字之和為 s。給定 given n,請列出所有可能的 s 值及其相應的概率。注意事項 you do not care about the accuracy of the result,we will help you to output results.樣例給定 n 1,返...
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 輸...