博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
51nod1031 骨牌覆盖 组合数学
阅读量:5080 次
发布时间:2019-06-12

本文共 487 字,大约阅读时间需要 1 分钟。

不难发现,只有$1 * 2, 2 * 2$两种方法

因此,设$f[i]$表示填满$1 - i$的方案数

那么有$f[i] = f[i - 1] + f[i - 2]$,其实就是斐波那契数列....

复杂度$O(n)$

#include 
#include
#include
using namespace std;#define ri register int#define mod 1000000007int n;int f[1005];int main() { cin >> n; f[0] = 1; f[1] = 1; for(ri i = 2; i <= n; i ++) f[i] = (f[i - 1] + f[i - 2]) % mod; printf("%d\n", f[n]); return 0;}

 

转载于:https://www.cnblogs.com/reverymoon/p/9524735.html

你可能感兴趣的文章
yii 1.x 添加 rules 验证url数组
查看>>
html+css 布局篇
查看>>
SQL优化
查看>>
用C语言操纵Mysql
查看>>
轻松学MVC4.0–6 MVC的执行流程
查看>>
redis集群如何清理前缀相同的key
查看>>
Python 集合(Set)、字典(Dictionary)
查看>>
获取元素
查看>>
proxy写监听方法,实现响应式
查看>>
第一阶段冲刺06
查看>>
十个免费的 Web 压力测试工具
查看>>
EOS生产区块:解析插件producer_plugin
查看>>
mysql重置密码
查看>>
jQuery轮 播的封装
查看>>
一天一道算法题--5.30---递归
查看>>
JS取得绝对路径
查看>>
排球积分程序(三)——模型类的设计
查看>>
python numpy sum函数用法
查看>>
php变量什么情况下加大括号{}
查看>>
linux程序设计---序
查看>>