神奇砖块(递推)
【问题描述】
现在你有一个大小为3 × 𝑁的路面,以及三种不同大小的砖块:1 × 1,2 × 2以
及两个直角边都为2的直角三角形砖。现在问有多少种不同的方案,能够使用这
三种转铺满整个路面?
【输入格式】
一行一个正整数𝑁。
【输出格式】
一行一个整数代表答案对109 + 7取模之后的结果。
【样例输入】
1
【样例输出】
1
【数据规模与约定】
对于100%的数据,令斐波那契数列数列第一项为1第二项为2第𝑖项为𝑓𝑖 =
𝑓𝑖−1 + 𝑓𝑖−2,则对于第𝑖组数据,有𝑁 = 𝑓𝑖。
#include<bits/stdc++.h> using namespace std; int main(){ long long n; int f[100000]; cin>>n; const int changshu=1e9+7; f[1]=1; f[2]=7; for(int a=2;a<=n;a++) { f[a]=(f[a-1]+6*f[a-2])%changshu; } cout<<f[n]; return 0; }