Problem
有一只经过训练的蜜蜂只能爬向右侧相邻的蜂房,不能反向爬行。请编程计算蜜蜂从蜂房a爬到蜂房b的可能路线数。
其中,蜂房的结构如下所示。
Sample Input
2 1 2 3 6
Sample Output
1 3
Code
#include<stdio.h>
int GetPathNumber(int a,int b);
int main(){
int t,a,b;
scanf("%d",&t);
while(t--){
scanf("%d %d",&a,&b);
printf("%d\n",GetPathNumber(a,b));
}
return 0;
}
int GetPathNumber(int a,int b){
long long c[50]={0};// Fibonacci[50]超过了整数范围
int i;
c[1]=1;
c[2]=2;
for(i=3;i<=b-a;i++)
{
c[i]=c[i-1]+c[i-2];
}
return c[b-a];
}
GET:
1.大概知道是什么意思,但是总觉得有哪里不清楚,脑袋还是乱的,又不知道哪里不懂;
PROCESS:
1.总是喜欢在循环条件后面加’;'导致进不了循环。。。
2.参考https://blog.csdn.net/mengxiang000000/article/details/50346467
但他是把一个范围里的数字全都求出来,然后按需要去拿,我写的是函数,每一次都重算太浪费