您的位置:首页 > 其它

SDAU 课程练习3 递推大汇总

2016-04-28 12:00 232 查看


Problem J


Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other)


Total Submission(s) : 14   Accepted Submission(s) : 9


Problem Description

有一楼梯共M级,刚开始时你在第一级,若每次只能跨上一级或二级,要走上第M级,共有多少种走法?

 

Input

输入数据首先包含一个整数N,表示测试实例的个数,然后是N行数据,每行包含一个整数M(1<=M<=40),表示楼梯的级数。

 

Output

对于每个测试实例,请输出不同走法的数量

 

Sample Input

2
2
3

 

Sample Output

1
2

 
递推,f n = f n-1 + f n-2 


Problem K


Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other)


Total Submission(s) : 23   Accepted Submission(s) : 10


Problem Description

有一只经过训练的蜜蜂只能爬向右侧相邻的蜂房,不能反向爬行。请编程计算蜜蜂从蜂房a爬到蜂房b的可能路线数。<br>其中,蜂房的结构如下所示。<br><img src=../data/images/C40-1001-1.jpg><br>

 

Input

输入数据的第一行是一个整数N,表示测试实例的个数,然后是N 行数据,每行包含两个整数a和b(0<a<b<50)。<br>

 

Output

对于每个测试实例,请输出蜜蜂从蜂房a爬到蜂房b的可能路线数,每个实例的输出占一行。<br>

 

Sample Input

2
1 2
3 6

 

Sample Output

1
3

 

一样递推    同上


Problem L


Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other)


Total Submission(s) : 35   Accepted Submission(s) : 16


Problem Description

在2×n的一个长方形方格中,用一个1× 2的骨牌铺满方格,输入n ,输出铺放方案的总数.<br>例如n=3时,为2× 3方格,骨牌的铺放方案有三种,如下图:<br><img src=../data/images/C40-1003-1.jpg>

 

Input

输入数据由多行组成,每行包含一个整数n,表示该测试实例的长方形方格的规格是2×n (0<n<=50)。<br>

 

Output

对于每个测试实例,请输出铺放方案的总数,每个实例的输出占一行。<br>

 

Sample Input

1
3
2

 

Sample Output

1
3
2

 

也是递推, f n =  f n-1  +f  n- 2


Problem M


Time Limit : 2000/1000ms (Java/Other)   Memory Limit : 65536/32768K (Java/Other)


Total Submission(s) : 20   Accepted Submission(s) : 16


Problem Description

有一头母牛,它每年年初生一头小母牛。每头小母牛从第四个年头开始,每年年初也生一头小母牛。请编程实现在第n年的时候,共有多少头母牛?

 

Input

输入数据由多个测试实例组成,每个测试实例占一行,包括一个整数n(0<n<55),n的含义如题目中描述。<br>n=0表示输入数据的结束,不做处理。

 

Output

对于每个测试实例,输出在第n年的时候母牛的数量。<br>每个输出占一行。

 

Sample Input

2
4
5
0

 

Sample Output

2
4
6

 

f n = f n -1 + f n - 3

代码就不贴了,
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: