剑指offer——矩阵覆盖
题目:我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?
思路:我们知道小矩形可以横着放也可以竖着放,那么现在用f(n)表示种类数,举个例子,
假设第一个小矩形竖着放,那么剩下的就是f(3),
如果第一个小矩形横着放,那么他底下的也必须横着放,方法数则为余下的f(2)
因此可以推导出公式:f(n)=f(n-1)+f(n-2),其中f(1)=1,f(2)=2;
class Solution {
public:
int rectCover(int number) {
if(number==0) return 0;
if(number==1) return 1;
if(number==2) return 2;
int res=0;
int pre1=1;
int pre2=2;
for(int i=3;i<=number;i++){
res=pre1+pre2;
pre1=pre2;
pre2=res;
}
return res;
}
};
剑指offer——矩阵覆盖相关推荐
- [剑指offer] 矩阵覆盖
题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形.请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 感觉像是刷次数一样.. 又是斐波那契 考虑最后一列,其元素只 ...
- 剑指offer 矩阵中的路径 @python
剑指offer 矩阵中的路径 @python 题目描述 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径.路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向 ...
- [剑指Offer]-矩阵中的路径
题目描述 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径.路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子.如果一条路径经过了矩阵中 ...
- 剑指offer:矩阵中的路径
题目 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径.路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子.如果一条路径经过了矩阵中的某 ...
- 剑指offer 矩形覆盖
题目描述 我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形.请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法? 分析: 本题和青蛙跳台阶异曲同工之妙,都是菲波那切数列的变形 ...
- 剑指offer——矩阵中的路径
问题描述: 请设计一个函数,用来判断在一个矩阵中是否存在一条包含某字符串所有字符的路径.路径可以从矩阵中的任意一个格子开始,每一步可以在矩阵中向左,向右,向上,向下移动一个格子.如果一条路径经过了矩阵 ...
- 【剑指offer】顺时针打印矩阵
转载请注明出处:http://blog.csdn.net/ns_code/article/details/26053049 剑指offer上的第20题,九度OJ上測试通过. 题目描写叙述: 输入一个矩 ...
- 剑指offer:顺时针打印矩阵
题目 输入一个矩阵,按照从外向里以顺时针的顺序依次打印出每一个数字,例如,如果输入如下4 X 4矩阵: 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 则依次打印出数字1 ...
- 7、斐波那契数列、跳台阶、变态跳台阶、矩形覆盖------------剑指offer系列
题目:斐波那契数列 大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0). f(n) = f(n-1) + f(n-2) 基本思路 这道题在剑指offe ...
最新文章
- 模拟一个简单计算器_阅读模拟器的简单介绍
- Android进阶知识:事件分发与滑动冲突(一)
- java的单例设计模式
- golang中的strings.SplitAfter
- Scala学习第五天数组
- Applet 大文件上传
- tomcat源码分析_百战卓越108天tomcat和servlet源码分析
- 手忙脚乱的快乐 谈谈Overcooked让人爱恨交织的多人合作机制
- 使用SQLQuery
- Linux指令not found
- 2003服务器远程桌面连不上解决办法
- 漫步微积分七——连续函数
- springboot 多线程_机密文档!阿里产出SpringBoot/Cloud,细节爆炸
- 控制台怎么查看错误的详细信息_js错误处理,quot;try..catchquot;
- 续招商、保利后,纬衡科技又签地产大鳄碧桂园
- cannot be cast to android.support.v4.app.Fragment
- x线计算机体层成像设备教案,医学影像设备学第4章-数字X线设备ppt课件
- 微信小程序(第二十六章)- json-server环境搭建
- Python openpyxl 删除excel有删除线的文字
- 什么是大型机和小型机
热门文章
- 12个乒乓球,其中有11个球每个球重量一模一样,另外1个球重量和那11个球不一样.用天平称三次,把单独的球(和那11个重量不一样的球)找出来
- 编写程序计算圆的面积和周长。
- 杀虫灯可以诱捕哪些害虫,菜田可以用吗?
- 光纤工程的,光纤熔接,光纤测试
- 8个Spring事务失效的场景,你碰到过几种?
- 简单运算器的设计与仿真
- python控制鼠标点击_python模拟点击中如何操作鼠标位置?
- P1417 烹调方案
- CT图像重建算法------迭代投影模型之距离驱动算法(Distance-Driven Model,DDM)
- 关于八码数问题有解与无解的证明