【剑指Offer】矩形覆盖
来源:互联网 发布:淘宝美工在家可以接单 编辑:程序博客网 时间:2024/05/31 19:41
问题描述
我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。
请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,
总共有多少种方法?
解题思路
n=1 - 只有横放一个矩形一种解决办法
n=2 - 有横放一个矩形,竖放两个矩形两种解决办法
n=3 - n=2的基础上加1个横向,n=1的基础上加2个竖向
n=4 - n=3的基础上加1个横向,n=2的基础上加2个竖向
·
·
·
n=n - n = f(n-1) + f(n-2)
斐波那契数列变种。。。。。
代码实现
class Solution {public: int rectCover(int number) { if (number == 0) return 0; else if(number == 1){ return 1; } else if (number == 2){ return 2; } return rectCover(number - 1) + rectCover(number - 2); }};
发现碰到这种问题,可以通过从n=0或1开始慢慢先算几个(跟初高中找规律填数一样),来找出相连两个数或相连的几个数之间的关系。
2 0
- 剑指offer--矩形覆盖
- 剑指offer--矩形覆盖
- 《剑指offer》矩形覆盖
- 剑指offer 矩形覆盖
- 《剑指offer》矩形覆盖
- 剑指 offer:矩形覆盖
- 【剑指Offer】矩形覆盖
- 剑指offer 矩形覆盖
- 剑指offer-矩形覆盖
- 剑指Offer 矩形覆盖
- 剑指offer 矩形覆盖
- [剑指offer]矩形覆盖
- 《剑指offer》-矩形覆盖
- 【剑指offer】覆盖矩形
- 《剑指offer》矩形覆盖
- 剑指offer - 矩形覆盖
- 【剑指offer】矩形覆盖
- 剑指offer-矩形覆盖
- CChart曲线库移值
- 在openwrt中对https 数据的转发到 云端
- Rails 创建关联关系流程
- Python中的内存管理【转载】
- poj 3111 Status List (二分 + 贪心 最大化平均值)
- 【剑指Offer】矩形覆盖
- 面试中如何“投机取巧”
- java
- 无关技术,纯属吐槽。
- Adapter&&GroupAdapter&&VerifyAdapter&&PicAdapter
- Java9: REPL环境与编程
- android网络游戏开发——网络通信——IO处理
- storm-kafka数据流量问题
- Win10实现窗口AeroGlass化