HDU

题意:

如题

思路:

仔细观察图

1-4和3-6其实是一样的答案,那么所有的方案都可以相减,意思为全部转化为从1开始
剩下的就是观察规律,仔细观察5号,能到5号蜂房的只有3和4,3和4到5号蜂房只有一种方法,那么到5号蜂房的方法就是到3号和4号的和
一次类推

这是一个斐波那契数列,注意如果是int类型会爆。。。

代码:

#include<iostream>

using namespace std;

typedef long long ll;
const int maxn = 60;
ll arr[maxn];

void init() {
	arr[1] = 1;
	arr[2] = 2;
	arr[3] = 3;
	for(int i = 4; i < maxn; i++) {
		arr[i] = arr[i-1] + arr[i-2];
	}
}

int main () {
	init();
	int t, a, b;
	scanf("%d", &t);
	while(t--) {
		scanf("%d %d", &a, &b);
		printf("%lld
", arr[b-a]); 
	}
	
	return 0;
}
原文地址:https://www.cnblogs.com/somliy/p/9718206.html