目录
装修

** 装修:** <Excerpt in index | 首页摘要>

<The rest of contents | 余下全文>

装修
Time Limit: 1000 MS Memory Limit: 65536 K
Total Submit: 410(225 users) Total Accepted: 262(212 users) Rating: Special Judge: No
Description
hero为了能顺利娶princess ,花了血本,买了个房子,现在决定装修。房子的长度为n米,宽度为3米,现在我们有2种地砖,规格分别是1米×1米,2米×2米,如果要为该教室铺设地砖,请问有几种铺设方式呢?
Input
输入数据首先包含一个正整数C,表示包含C组测试用例,然后是C行数据,每行包含一个正整数n(1<=n<=30),表示教室的长度。
Output
对于每组测试数据,请输出铺设地砖的方案数目,每个输出占一行。
Sample Input
2 2 3
Sample Output
3 5
Author
王勇

动态规划,考虑加了一米的情况,最后一米只用1X1的,有a[j-1]种情况;用2X2的,有2*a[j-2]种情况;

Code
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
#include<cstdio>
#include<cmath>
#include<queue>
#include<iostream>
#include<algorithm>
using namespace std;
long a[31];
long check(long n)
{
if(n==1)
{
a[n]=1;
return 1;
}
else if(n==2)
{
a[n]=3;
return 3;
}
else
{
a[n]=check(n-1)+2*check(n-2);
return a[n];
}
}
int main()
{
long n=30;
check(n);
int T;
while(~scanf("%d",&T))
{
while(T--)
{
scanf("%ld",&n);
printf("%ld\n",a[n]);
}
}
return 0;
}
文章作者: 爱笑的k11
文章链接: http://1315402725.github.io/posts/5a0ddfe7/
版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 爱笑的k11
打赏
  • 微信
  • 支付寶

评论