对于一个 2 行N 列的走道。现在用 1×2,2×2 的砖去铺满。问有多少种不同的方式。
输入格式
一个数字 N,0≤n≤250。
输出格式
方案数。(对 100007 取模)。
输出时每行末尾的多余空格,不影响答案正确性
样例输入1
2
样例输出1
3
样例输入2
8
样例输出2复
171
思路特别简单就是动态规划 做一下笔记
#include<bits/stdc++.h>
using namespace std;
const int MAXN=251;
const int MOD=100007;
int dp[251],n;
void solve(){
scanf("%d",&n);
for(int i=3;i<=n;i++){
dp[i]=(dp[i-1]+dp[i-2]*2)%MOD;
}
printf("%d",dp[n]);
}
int main(){
dp[1]=1;
dp[2]=3;
solve();
return 0;
}