我們可以用2*1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2*1的小矩形無重疊地覆蓋乙個2*n的大矩形,總共有多少種方法?
解析:不會,檢視解析後:迭代法:
矩形2*1是什麼樣的:兩行一列
矩形1*2是什麼樣的:一行兩列
2*n是兩行n列;
那麼我們可以設定最後一列為2*1時:那麼前邊的擺放方法為f(n-1)
我們可以設定最後兩列為兩個1*2時,那麼前邊的擺放方法為f(n-2)
加一起不就得了麼
**:public class solution
return rectcover(target - 1) + rectcover(target - 2);}}
偷個圖吧:
劍指offer JZ10矩形覆蓋
題目描述 我們可以用2 1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2 1的小矩形無重疊地覆蓋乙個2 n的大矩形,總共有多少種方法?比如n 3時,2 3的矩形塊有3種覆蓋方法 思路 n 4時的情況 如果到這裡,還沒有發現規律怎麼辦呢?那我們就再分析以下,從n 3到n 4,怎麼來的呢?這裡有2種...
10 矩形覆蓋(劍指offer)
10.矩形覆蓋 我們可以用2 1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2 1的小矩形無重疊地覆蓋乙個2 n的大矩形,總共有多少種方法?1.思路 以2x8的矩形為例。示意圖如下 我們先把2x8的覆蓋方法記為f 8 用第乙個1x2小矩陣覆蓋大矩形的最左邊時有兩個選擇,豎著放或者橫著放。當豎著放...
劍指offer 10 矩形覆蓋
題目 我們可以用2 1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2 1的小矩形無重疊地覆蓋乙個2 n的大矩形,總共有多少種方法?思路 斐波那契數列的變種,為什麼是斐波那契數列的變種?首先我們 認為小矩形為n的時候的總數是n,而那麼根據組合數學裡的加法原理,我把此題分為兩類,第一類就是小矩形1 ...