矩形覆盖_10

2021-12-23 18:06:17 浏览数 (1)

题目描述 我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?

比如n=3时,2*3的矩形块有3种覆盖方法: 对于涉及到n的数据当我们没有头绪的时候可以从小到大看看有没有什么规律

这题就是一个递归的变种,也是斐波那契数列的变种

代码语言:javascript复制
if (target < 2) {
            return target;
        }

        int sum = 2;
        int one = 1;
        for (int i = 3; i <= target; i  ) {
            sum=sum one;
            one=sum-one;
        }
        return sum;

0 人点赞