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

思路:
这题和前面的那道跳台阶是一模一样的题,也是动态规划,这里的2*1的小矩形横着放就是跳2阶,竖着放就是跳1阶,当大矩形长度小于等于2时,方法数量为长度本身;当大于2时,即为d[i]=d[i-1]+d[i-2],但是递归调用太耗时,就用迭代。

代码:

class Solution {
public:int rectCover(int number) {if(number<=2){//当number小于等于2,直接返回numberreturn number;}else{int pre=1;int now=2;int tmp;//用来存储原来的now,在now更新后赋给prefor(int i=3;i<=number;i++){//当number>3时,种数为前两个种数相加tmp=now;now=now+pre;pre=tmp;}return now;}}
};

输出结果:运行时间: <1 ms 占用内存:8568K 状态:答案正确

《剑指Offer》 矩形覆盖相关推荐

  1. 剑指offer 矩形覆盖

    题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形.请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 分析: 本题和青蛙跳台阶异曲同工之妙,都是菲波那切数列的变形 ...

  2. [剑指offer] 矩阵覆盖

    题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形.请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 感觉像是刷次数一样.. 又是斐波那契 考虑最后一列,其元素只 ...

  3. 剑指offer——矩阵覆盖

    题目:我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形.请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 思路:我们知道小矩形可以横着放也可以竖着放,那么现在用f(n)表 ...

  4. 7、斐波那契数列、跳台阶、变态跳台阶、矩形覆盖------------剑指offer系列

    题目:斐波那契数列 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0). f(n) = f(n-1) + f(n-2) 基本思路 这道题在剑指offe ...

  5. JAVA实现矩形覆盖问题(《剑指offer》)

    题目描述: 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形. 请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 最近在刷<剑指offer>里的编程题,但是网 ...

  6. 剑指Offer #10 矩形覆盖(问题分析)

    题目来源:牛客网-剑指Offer专题 题目地址:矩形覆盖 题目描述 我们可以用2∗12*12∗1的小矩形横着或者竖着去覆盖更大的矩形.请问用n个2∗12*12∗1的小矩形无重叠地覆盖一个2∗n2*n2 ...

  7. 剑指offer——跳台阶变态跳台阶矩形覆盖

    剑指offer--跳台阶&&变态跳台阶&&矩形覆盖 1.跳台阶 哈哈哈,递归题,一遍过 class Solution { public:int jumpFloor(in ...

  8. 剑指offer(1-10题)详解

    文章目录 01二维数组的查找 02替换空格 03从尾到头打印链表 04重建二叉树★ 05 用两个栈实现队列 06旋转数组的最小数字 07 斐波那契数列 08 跳台阶 09 变态跳台阶★ 10 矩阵覆盖 ...

  9. 【强烈推荐】《剑指Offer:名企面试官精讲典型编程题》一书中IT名企经典面试题

    各位程序猿: <剑指Offer> 一书源自该书作者何海涛坚持更新与编写的博客( http://zhedahht.blog.163.com/ ),该博客收集整理了大量如微软.Google等知 ...

  10. 剑指offer试题(PHP篇一)

    剑指offer试题(PHP篇一) 1.二维数组中的查找 题目描述 在一个二维数组中,每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序.请完成一个函数,输入这样的一个二维数组和一个 ...

最新文章

  1. 机器学习和计算机视觉的前20个图像数据集
  2. 阿里平头哥首款AI芯片发布!46倍于英伟达P4,刷新全球推理性能最高纪录
  3. 对MIME格式的邮件文件进行解码获取其可读内容和附件等
  4. NYOJ 648 数字1的数量
  5. 征战蓝桥 —— 2014年第五届 —— C/C++A组第5题——锦标赛
  6. mysql安装(glibc版本安装5.7.22)
  7. clocks_per_sec 时间不正确_壁挂炉不用了怎么关?壁挂炉正确的关闭方法
  8. C语言和设计模式(建造者模式)
  9. A股开盘:深证区块链50指数涨0.18%,概念股涨多跌少
  10. 中国数据总线电缆市场趋势报告、技术动态创新及市场预测
  11. algorithm头文件中的函数:remove()与remove_if() 函数,……
  12. windows server 2008 安装及VS2008和VS 2008 SP1安装
  13. 抽头延时信道模型matlab,频率选择性衰落信道模型研究与仿真.docx
  14. 洛谷再分肥宅水c语言,【菜鸟进阶之路】P5706【深基2.例8】再分肥宅水 - 洛谷
  15. 《数据密集型应用系统设计》笔记-8-流处理
  16. Myeclipse中编辑Jsp时解决光标乱跑的方法
  17. 怎样给计算机桌面设密码,怎样给电脑设置锁屏密码
  18. 0基础2(在1基础之上)
  19. 河南大学计算机学院夏令营,河南大学数学与统计学院2020年优秀大学生国际夏令营...
  20. 2021年危险化学品生产单位安全生产管理人员考试题及危险化学品生产单位安全生产管理人员最新解析

热门文章

  1. python 计算每日累计_5分钟学会用Python可视化数据分析美股
  2. VS2019配置opencv详细图文教程和测试代码
  3. CUDA GPU内存结构
  4. OpenCV中基本数据结构(2)_Scalar
  5. layui复选框:被js操作checked切换并显示状态(含案例、代码)
  6. phpcms v9网站的数据库配置文件在哪
  7. 《一本书》文字展示网站Typecho主题
  8. html引入png不显示透明北京,解决在网页上显示PNG图片底色不透明的方法
  9. python计算分段函数_Python练习题2.2计算分段函数
  10. uml用什么软件画图_什么是建筑效果图,告诉你用什么软件画图和渲染