ACM第三次练习—1011

题意:有一只经过训练的蜜蜂只能爬向右侧相邻的蜂房,不能反向爬行。请编程计算蜜蜂从蜂房a爬到蜂房b的可能路线数。

思路:题目中没有图,去百度了下,然后简单的写了下前几个数之间可能对应的路线数就找到了DP公式:a[i]=a[i-1]+a[i-2];

感想:有时候找到DP公式后题就很简单了。

代码:

#include<stdio.h> 
#include<stdlib.h> 
int main() 
{ 
   int t,i;
   long long a[51];
   a[1]=1;
   a[2]=2;
   a[3]=3;
   for(i=3;i<51;i++)
   a[i]=a[i-1]+a[i-2];
   scanf("%d",&t); 
   while(t--) 
   { 
     int m,n,i,j;
     scanf("%d%d",&m,&n);
     j=n-m;
     printf("%I64d\n",a[j]);
   } 
   return 0
}


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章