美文网首页剑指offer
10-矩形覆盖-动态规划

10-矩形覆盖-动态规划

作者: 马甲要掉了 | 来源:发表于2020-04-27 18:14 被阅读0次

题目描述

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

题目分析

image

当然也可以逆向思维

应为可以横着放或竖着放,多以f(n)可以是2(n-1)的矩形加一个竖着放的21的矩形或2*(n-2)的矩形加2横着放的,即f(n)=f(n-1)+f(n-2)

当到了最后,f(1)=1,f(2)=2

代码

function rectCover(number)
{
    // write code here
    if(number==1) return 1;
    if(number==2) return 2;
    let last = 1;
    let nextLast =2;
    let res = 0;
    while(number>2){
        res = last + nextLast;
        last = nextLast;
        nextLast = res;
        number--
    }
    return res;
    
}

相关文章

  • 10-矩形覆盖-动态规划

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

  • LeetCode | 面试题10- II. 青蛙跳台阶问题【剑指

    LeetCode 面试题10- II. 青蛙跳台阶问题【剑指Offer】【Easy】【Python】【动态规划】 ...

  • LeetCode | 面试题10- I. 斐波那契数列【剑指Of

    LeetCode 面试题10- I. 斐波那契数列【剑指Offer】【Easy】【Python】【动态规划】 问题...

  • 矩形覆盖

    题目描述 我们可以用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的矩形,求有多少种覆盖方法 思路: 本题乍一看很难,但是分析一下并不难。 先从...

网友评论

    本文标题:10-矩形覆盖-动态规划

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