提綱
漢諾塔漢諾塔:漢諾塔(又稱河內塔)問題是源於印度乙個古老傳說的益智玩具。大梵天創造世界的時候做了三根
金剛石
柱子,在一根柱子上從下往上按照大小順序摞著64片**圓盤。大梵天命令婆羅門把圓盤從下面開始按大小順序重新擺放在另一根柱子上。並且規定,在小圓盤上不能放大圓盤,在三根柱子之間一次只能移動乙個圓盤。
動態規劃:
1) 問題具有最優子結構性質。如果問題的最優解所包含的 子問題的解也是最優的,我們就稱該問題具有最優子結 構性質。
2) 無後效性。當前的若干個狀態值一旦確定,則此後過程 的演變就只和這若干個狀態的值有關,和之前是採取哪 種手段或經過哪條路徑演變到當前的這若干個狀態,沒 有關係。
例子:
7
3 8
8 1 0
2 7 4 4
4 5 2 6 5
在上面的數字三角形中尋找一條從頂部到底邊的路徑,使得 路徑上所經過的數字之和最大。路徑上的每一步都只能往左下或 右下走。只需要求出這個最大和即可,不必給出具體路徑。
---------------------
1)有乙隻兔子,從出生後第2個月起每個月都生乙隻兔子,小兔子長到第2個月後每個月又生乙隻兔子,假如兔子都不死,問每個月的兔子總數為多少?
2)有乙隻兔子,從出生後第3個月起每個月都生乙隻兔子,小兔子長到第三個月後每個月又生乙隻兔子,假如兔子都不死,問每個月的兔子總數為多少?
3)有一頭母牛,它每年年初生一頭小母牛。每頭小母牛從第四個年頭開始,每年年初也生一頭小母牛。請程式設計實現在第n年的時候,共有多少頭母牛?
4)我們可以用2*1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2*1的小矩形無重疊地覆蓋乙個2*n的大矩形,總共有多少種方法?
乙隻青蛙一次可以跳上1級台階,也可以跳上2級。求該青蛙跳上乙個n級的台階總共有多少種跳法(先後次序不同算不同的結果)。
6)乙隻青蛙一次可以跳上1級台階,也可以跳上2級……它也可以跳上n級。求該青蛙跳上乙個n級的台階總共有多少種跳法。
7)有乙個x*y的網格,小團要在此網格上從左上角到右下角,只能走格點且只能向右或向下走。請設計乙個演算法,計算小團有多少種走法。給定兩個正整數int x,int y,請返回小團的走法數目。
推薦讀物:
揹包問題
揹包九講
動態規劃基礎題2
演示 c 問題描述 給定乙個字串,求最少切幾次,可以都切成回文串 例如 對於字串 abaacca 最少切割一次,就可以得到 aba 和 acca 這兩個回文子串 輸入 輸入的第一行是乙個整數 t t 20 表示一共有 t 組資料。接下來的 t 行,每一行都包含了乙個長度不超過的 1000 的字串,且...
動態規劃基礎題 機器分配
題目描述 總公司擁有高效裝置m臺,準備分給下屬的n個分公司。各分公司若獲得這些裝置,可以為國家提供一定的盈利。問 如何分配這m臺裝置才能使國家得到的盈利最大?求出最大盈利值。其中m 15,n 10。分配原則 每個公司有權獲得任意數目的裝置,但總台數不超過裝置數m。輸入輸出格式 輸入格式 第一行有兩個...
jzoj3848 大水題 數字動態規劃
dzy 定義乙個n 2 位的數的生成矩陣a 為乙個大小為n n 且aij 為這個數的第i n j n位的矩陣。現在dzy 有乙個數n 2 位的數k,他想知道所有小於等於k 的數的n n 生成矩陣有多少種。如果不足n 2 位則補字首零 設f i 0,1 0,1 表示做到第i位,正著看是否和給定數一樣,...