题目
我们可以用2x1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2x1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?
思路
规律遵循斐波那契数列规律
代码
1public class Solution {
2 public int JumpFloor(int target) {
3 if(target == 1)
4 return 1;
5 if(target == 2)
6 return 2;
7 int a = 1;
8 int b = 2;
9 int sum = a + b;
10 for(int i=3;i<=target;i++)
11 {
12 sum = a + b;
13 a = b;
14 b = sum;
15 }
16 return sum;
17 }
18}