Java代碼實現(xiàn)矩形覆蓋實例
更新時間:2019年06月20日 09:57:15 作者:Maxinxx
這篇文章主要介紹了Java代碼實現(xiàn)矩形覆蓋實例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,,需要的朋友可以參考下
題目
我們可以用2×1的小矩形橫著或者豎著去覆蓋更大的矩形。請問用n個2×1的小矩形無重疊地覆蓋一個2×n的大矩形,總共有多少種方法?
程序核心思想
2*(n-1)的方塊用小方塊覆蓋只有一種方法(豎著),2×(n-2)的方塊用小方塊覆蓋只有一種方法(橫著)
或者
- 第一次把小方塊豎著放,剩下的排布方式為 f(target - 1)
- 第一次把小方塊橫著放,剩下的排布方式為 f(target - 2)
代碼
public class Solution { public int RectCover(int target) { if(target <= 0 ){ return 0; } if(target == 1){ return 1; }else if(target == 2){ return 2; }else{ return RectCover(target - 1) + RectCover(target - 2); } } }
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
詳細(xì)介紹Java關(guān)鍵字throw?throws?Throwable的用法與區(qū)別
這篇文章主要介紹了java中throws與throw及Throwable的用法和區(qū)別,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2022-04-04