動態規劃 矩陣覆蓋

2021-10-09 08:41:28 字數 419 閱讀 8574

1.題目

我們可以用21的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個21的小矩形無重疊地覆蓋乙個2*n的大矩形,總共有多少種方法?

比如n=3時,2*3的矩形塊有3種覆蓋方法:

2.**

class

solution

return dp[number];}

};

3.思路

這個也是比較簡單的動態規劃題,我們通過分析可以知道,例如第覆蓋24矩陣的時候,由於23有3種方法,豎著放,我們新增1個就可以覆蓋2*4,這種情況是3種,也可以橫著放,但是先橫著放上面的和下面的,最終都以一種情況。我貼出來官方題解,以便理解思路。

codevs線段覆蓋 動態規劃

題目描述 description 給定x軸上的n 0輸入描述 input description 輸入第一行是乙個整數n。接下來有n行,每行有二個空格隔開的整數,表示一條線段的二個端點的座標。輸出描述 output description 輸出第一行是乙個整數表示最多剩下的線段數。樣例輸入 samp...

動態規劃 狀態壓縮 覆蓋

2020 03 01 23 08 51 問題描述 你有一塊棋盤,棋盤上有一些格仔已經壞掉了。你還有無窮塊大小為1 2的多公尺諾骨牌,你想把這些骨牌不重疊地覆蓋在完好的格仔上,請找出你最多能在棋盤上放多少塊骨牌?這些骨牌可以橫著或者豎著放。輸入 n,m代表棋盤的大小 broken是乙個b 2的二維陣列...

矩陣連乘(動態規劃)

題目描述 給定n個矩陣 a1,a2,an 其中ai與ai 1是可乘的,i 1,2 n 1。如何確定計算矩陣連乘積的計算次序,使得依此次序計算矩陣連乘積需要的數乘次數最少。例如 a1 a2 a3 a4 a5 a6 最後的結果為 a1 a2a3 a4a5 a6 最小的乘次為15125。思路 動態規劃演算...