顯示具有 資料結構 標籤的文章。 顯示所有文章
顯示具有 資料結構 標籤的文章。 顯示所有文章

2017/11/29

取 n 個亂數,總和為 100

現在在中興大學資工系修資訊第二專長,這學期資料結構的課程有個作業是要產生 5~10 個亂數來畫一個霍夫曼樹 (嗯,霍夫曼樹是什麼還是上網查才知道的,反正不是今天的重點),不過作業有個附加條件,就是這 5~10 個亂數的總和要為 100。

我還在頭痛這種亂數要怎麼得到咧?幾個同修第二專長的數學老師提出不同的方法來取總和 100 的亂數了。這還滿有趣的,光是取亂數就有這麼多種解法。

我怕以後忘了,所以把這些數學老師提出的方法記錄下來,也許以後用得到。為了方便說明,底下都以『取 5 個亂數,總和為 100』為例,比較統一,比較好說明。

水桶法

陳志峰老師提出一個方法,我把它稱為水桶法。先準備 5 個水桶,準備來取亂數。

準備 5 個水桶
圖、準備 5 個水桶

丟 5 面的骰子 10 次 (其實就是產生 1~5 的亂數,連續做 10 次)。

丟 5 面的骰子 10 次
圖、丟 5 面的骰子 10 次

骰子丟出 1,就在 1 號水桶上畫一筆做記號,丟出 2,就在 2 號水桶上畫一筆做記號,依此類推。

將骰子出現的點數分類計次
圖、將骰子出現的點數分類計次