发布于2020-03-08 22:25 阅读(1229) 评论(0) 点赞(29) 收藏(0)
我们可以用2*1的小矩形横着或者竖着去覆盖更大的矩形。请问用n个2*1的小矩形无重叠地覆盖一个2*n的大矩形,总共有多少种方法?
比如n=3时,2*3的矩形块有3种覆盖方法:
这个题其实是青蛙跳格子问题换了叙述方法,青蛙跳格子问题见:https://blog.csdn.net/qq_22498427/article/details/104708687
小格子可以一次竖着放一个,也可以横着放两个。因此就像 n 级台阶,青蛙一次可以跳两级,也可以跳一级。
- class Solution:
- def rectCover(self, number):
- if number == 0:
- return 0
- ans0 = 1
- ans1 = 1
- for i in range(2,number+1):
- temp = ans0 + ans1
- ans0 = ans1
- ans1 = temp
- return ans1
作者:我Lovepython
链接:https://www.pythonheidong.com/blog/article/248633/e65cfc62fb013d9f94b8/
来源:python黑洞网
任何形式的转载都请注明出处,如有侵权 一经发现 必将追究其法律责任
昵称:
评论内容:(最多支持255个字符)
---无人问津也好,技不如人也罢,你都要试着安静下来,去做自己该做的事,而不是让内心的烦躁、焦虑,坏掉你本来就不多的热情和定力
Copyright © 2018-2021 python黑洞网 All Rights Reserved 版权所有,并保留所有权利。 京ICP备18063182号-1
投诉与举报,广告合作请联系vgs_info@163.com或QQ3083709327
免责声明:网站文章均由用户上传,仅供读者学习交流使用,禁止用做商业用途。若文章涉及色情,反动,侵权等违法信息,请向我们举报,一经核实我们会立即删除!