5、蜜蜂路线

5、蜜蜂路线
【问题描述】
        一只蜜蜂在下图所示的数字蜂房上爬动,已知它只能从标号小的蜂房爬到标号大的相邻蜂房,现在问你:蜜蜂从蜂房M开始爬到蜂房N,M<N,有多少种爬行路线?
 
【输入格式】
 输入M,N的值。
【输出格式】
 爬行有多少种路线。
【输入样例】bee.in
   1  14
【输出样例】bee.out
   377
 
 1 #include<cstdio>
 2 #include<iostream>
 3 using namespace std;
 4 int main()
 5 {
 6     __int64  f[60];
 7     int a,b,c;
 8     scanf("%d %d",&a,&b);
 9         f[a]=0;//将a的初值赋值为0; 
10         f[a+1]=1;//下一步赋值为1; 
11         f[a+2]=2;//赋值为2; 
12         if(b-a==1)//若a==b,cout<<1; 
13             printf("1\n");
14         else
15         {
16            for(int i=a+3;i<=b;i++)
17                f[i]=f[i-1]+f[i-2];//第i个=前两个之和; 
18            printf("%d\n",f[b]);
19         }
20     return 0;
21 }

 

posted @ 2017-03-22 11:03  ioioioioioio  阅读(410)  评论(0编辑  收藏  举报