美文网首页
矩形覆盖

矩形覆盖

作者: 燕大虾呀 | 来源:发表于2019-03-09 21:19 被阅读0次

一、题目描述

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

二、算法分析

如果是1x2的,只有一种覆盖方法,如果是2x2的,则有两种,2xn的矩形由前两种组合而成

定义f(n)表示2xn的矩阵的覆盖法,那么如同前面的跳台阶一样,只有两种可能,最后剩下的是1x2的矩形或则是2*2的矩形,所以f(n)=f(n-1)+f(n-2)

此处还是采用记事本法,记录每一种的覆盖数数,避免重复计算,

三、算法实现

public class Solution {
    int[] log = new int[1000];
    public int RectCover(int target) {
        int n = target;
        if(n==0|n==1||n==2)
            return n;
        if(log[n]==0)
            log[n]=RectCover(n-1)+RectCover(n-2);
        return log[n];
    }
}

文章为个人编辑,如有错误,欢迎指正!

相关文章

  • 矩形覆盖

    题目描述 我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形...

  • 矩形覆盖

    https://www.nowcoder.com/practice/72a5a919508a4251859fb2c...

  • 矩形覆盖

    描述 我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形,总...

  • 矩形覆盖

    ?环境:牛客的编译环境?语言:JavaScript☕️难点:画图时并没有找到规律,其实下次我可以思考久一点。?题目...

  • 矩形覆盖

    题目描述我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形,...

  • 矩形覆盖

    《剑指offer》面试题10(题目二)相关题目:矩形覆盖 题目:我们可以用2 x 1的小矩形横着或者竖着去覆盖更大...

  • 矩形覆盖

    题意:用21的小矩形完全覆盖一个2n的矩形,求有多少种覆盖方法 思路: 本题乍一看很难,但是分析一下并不难。 先从...

  • 矩形覆盖

    题目来源:牛客网--矩形覆盖 题目描述 我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形...

  • 矩形覆盖

    题目描述 我们可以用21的小矩形横着或者竖着去覆盖更大的矩形。请问用n个21的小矩形无重叠地覆盖一个2*n的大矩形...

  • 矩形覆盖

    我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共...

网友评论

      本文标题:矩形覆盖

      本文链接:https://www.haomeiwen.com/subject/igwepqtx.html