HHUOJ 1361 小明的烦恼
题目描述
小明最近新买了一个房间,为了给它做装修,想要给它铺上地砖。然而现有的地砖只有两种规格分别为1米1米、2米2米,由于小明买的房间有点小,宽度只有3米,长度为N米。当然这样一个房间也足够他自己一个人住了。那么如果要给这个房间铺设地砖,且只用以上这两种规格的地砖,请问有几种铺设方案。
输入
输入的第一行是一个正整数C,表示有C组测试数据。接下来C行,每行输入一个正整数n(1<=n<=30),表示房间的长度。
2
2
3
输出
对于每组输入,请输出铺设地砖的方案数目。
3
5
递推公式:a[i]=a[i-1]+2*a[i-2]
代码如下:
#include<iostream>
using namespace std;
int main()
{
int t,n;
long long a[35];
cin >> t;
a[1] = 1; a[2] =3;
while (t--)
{
cin >> n;
for (int i = 3; i <=n; i++)
{
a[i] = a[i - 1] + 2*a[i - 2];
}
cout << a[n] << endl;
}
}