51nod 1031 骨牌覆盖 斐波那契数列

来源:互联网 发布:劫持软件 编辑:程序博客网 时间:2024/06/06 08:35

题目链接:https://www.51nod.com/onlineJudge/questionCode.html#!problemId=1031
思路:没次增加时要么是最后添加竖的一块,要么是横的一块,宽度占掉2,可以从之前的状态转换过来

#include<cstdio>#include<queue>#include<iostream>#include<vector>#include<map>#include<cstring>#include<string>#include<set>#include<stack>#include<algorithm>#define cle(a) memset(a,0,sizeof(a))#define inf(a) memset(a,0x3f,sizeof(a))#define ll long long#define Rep(i,a,n) for(int i=a;i<=n;i++)using namespace std;const int INF = ( 2e9 ) + 2;const ll maxn = 1100;const int mod = 1e9+7;int f[maxn];int main(){    int n;    scanf("%d",&n);    f[0]=f[1]=1;    for(int i=2;i<=n;i++)    f[i]=(f[i-1]+f[i-2])%mod;    printf("%d",f[n]);}
原创粉丝点击