一只小蜜蜂...
Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/32768 K (Java/Others)
Total Submission(s): 32577 Accepted Submission(s): 12030
Problem Description
有一只经过训练的蜜蜂只能爬向右侧相邻的蜂房,不能反向爬行。请编程计算蜜蜂从蜂房a爬到蜂房b的可能路线数。
其中,蜂房的结构如下所示。

其中,蜂房的结构如下所示。

Input
输入数据的第一行是一个整数N,表示测试实例的个数,然后是N 行数据,每行包含两个整数a和b(0<a<b<50)。
Output
对于每个测试实例,请输出蜜蜂从蜂房a爬到蜂房b的可能路线数,每个实例的输出占一行。
Sample Input
2 1 2 3 6
Sample Output
1 3
斐波那契。。
当a,b相差较大时,ans[i-1]+ans[i-2] 会超int
#include <iostream>
using namespace std;
int main()
{
long long ans[50];
ans[1]=ans[2]=1;
for(int i=3; i<=49; i++)
ans[i]=ans[i-1]+ans[i-2];
int a,b,t;
cin>>t;
while(t--){
cin>>a>>b;
cout<<ans[b-a+1]<<endl;
}
return 0;
}
本文介绍了一个经典的编程问题:计算一只只能向右爬行的蜜蜂从蜂房a到蜂房b的所有可能路径数量。通过使用斐波那契数列的原理,文章提供了一种高效的算法解决方案。
1850

被折叠的 条评论
为什么被折叠?



