1. 程式人生 > >HDU - 2044 :一只小蜜蜂...

HDU - 2044 :一只小蜜蜂...

select int uil cpp i++ 實例 pan width keyword

有一只經過訓練的蜜蜂只能爬向右側相鄰的蜂房,不能反向爬行。請編程計算蜜蜂從蜂房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

如圖只有兩行蜂巢,第n個蜂巢可以由第n-1個或第n-2個蜂巢到達,即遞推式是f(n)=f(n-1)+f(n-2);是斐波那契數列,記憶化預處理。
源代碼:

Select Code
#include<iostream>

using namespace std;

long long int a[50];

int main()
{
	int n;
	cin>>n;
	a[0]=0;
	a[1]=1;
	a[2]=2;
	for(int i=3;i<50;i++)
		a[i]=a[i-1]+a[i-2];
	while(n--)
	{
		
		int c,b;
		cin>>c>>b;

		cout<<a[b-c]<<endl;
	}
	
	return 0;
 } 
 
 

HDU - 2044 :一只小蜜蜂...