矩形覆盖
我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?
仍然使用递归方法(n==1时:1种方法;n==2时:2种方法;当n>3时:即最后一次为竖着覆盖(只需横向一格)或最后一次为横着覆盖(需横向两个)====return f(n-1)+f(n-2))
1 public class Solution { 2 public int RectCover(int target) { 3 if(target == 0){ 4 return 0; 5 }else if(target == 1){ 6 return 1; 7 }else if(target == 2){ 8 return 2; 9 }else{ 10 return RectCover(target-1)+RectCover(target-2); 11 } 12 } 13 }
记录每一道题!!!