斐波拉契数列的应用

题目

有一只经过训练的蜜蜂只能爬向右侧相邻的蜂房,不能反向爬行。请编程计算蜜蜂从蜂房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

思路

观察给出的图,以f[i]表示相隔距离为i 的两个房间之间的路线数;
我们发现,若要到达第i个房间,则会通过第i-1,i-2号房间,而从i-1和i-2房走到第I号房有分别只有一种路线;
所以,f[i]=f[i-1]+f[i-2]

代码

#include<cstdio>
#include<iostream>
#include<cstring>
#include<algorithm>
#define ll long long
#define re register int
#define fp(i,a,b) for(re i=a,I=b;i<=I;++i)
#define fd(i,a,b) for(re i=a,I=b;i>=I;--i)
#define file(s) freopen(s".in","r",stdin),freopen(s".out","w",stdout);
using namespace std;
ll f[50];
inline ll solve(int a){
if(a==1) return 1;
if(a==2) return 2;
for(register int i=3;i<=a;i++) f[i]=f[i-1]+f[i-2];
return f[a];
}
int main(){
//file("s");
int n;
cin>>n;
f[1]=1;
f[2]=2;
for(register int i=1;i<=n;++i) {
int a,b;
cin>>a;
cin>>b;
cout<<solve(b-a)<<endl;
}
return 0;
}

【题解】hdu2044一只小蜜蜂的更多相关文章

  1. hdu2044 一只小蜜蜂

    和之前的楼梯题一样,递推求解 但是要注意这里可以到50,结果已经超出了Int的范围,所以要用64位保存 #include<iostream> #include<cmath> # ...

  2. 一只小蜜蜂...[HDU2044]

    一只小蜜蜂... Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  3. (递推)一只小蜜蜂... hdu2044

    一只小蜜蜂... 链接:http://acm.hdu.edu.cn/showproblem.php?pid=2044 Time Limit: 2000/1000 MS (Java/Others)    ...

  4. hdu 2044:一只小蜜蜂...(水题,斐波那契数列)

    一只小蜜蜂... Time Limit: / MS (Java/Others) Memory Limit: / K (Java/Others) Total Submission(s): Accepte ...

  5. hdoj 2044一只小蜜蜂...【斐波那契变形】

    一只小蜜蜂... Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  6. 函数递归简单题-hdoj-2044 2018-一只小蜜蜂 母牛的故事

    题目:一只小蜜蜂 递归做法: #include<cstdio> #include<iostream> #include<stdlib.h> #include< ...

  7. 【LeetCode题解】136_只出现一次的数字

    目录 [LeetCode题解]136_只出现一次的数字 描述 方法一:列表操作 思路 Java 实现 Python 实现 方法二:哈希表 思路 Java 实现 Python 实现 方法三:数学运算 思 ...

  8. HDU 2044 一只小蜜蜂(递归)

    一只小蜜蜂... Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

  9. hdu 2044 一只小蜜蜂...(简单dp)

    一只小蜜蜂... Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Su ...

随机推荐

  1. LeetCode 26. 删除有序数组中的重复项

    双指针法 分析: 设置两个指针:p1,p2,初始p1指向数组的第一个元素,p2指向第二个元素 1)如果p1的值 == p2的值,就让p2后移一位 2)如果p1的值 != p2的值,修改p1的下一个元素 ...

  2. 这次我好像才真的明白了CSS Rem字体计算的原理

    背景 如何按照设计稿中标注的尺寸,直接写页面的样式,不再需要px2rem这样的工具或者人工转换 ? 只要你明白了rem的计算原理,这个问题的答案超级简单. 根字体大小计算核心原理 设备的根字体大小 * ...

  3. 【Docker】2. Docker的架构介绍、安装与卸载 (CentOS 7)

    一.docker的基本组成 开局一张图. docker的组成: Client:客户端,可以通过它与docker服务进行交互.比如容器的构建.拉取.运行. DOCKER_HOST:就是docker服务. ...

  4. C#如何加载嵌入到资源的非托管dll

    如何加载非托管Dll 我们总会遇到需要加载非Win32的非托管dll,这里推荐一种方式就是将那些非win32的非托管dll嵌入资源的方式,在入口解压并且加载的方式,我先来看看如何实现吧,首先我们准备好 ...

  5. Elasticsearch数据库优化实战:让你的ES飞起来

    摘要:ES已经成为了全能型的数据产品,在很多领域越来越受欢迎,本文旨在从数据库领域分析ES的使用. 本文分享自华为云社区<Elasticsearch数据库加速实践>,原文作者:css_bl ...

  6. Envoy:主动健康监测

    实验文件 docker-compose version: '3' services: envoy: image: envoyproxy/envoy-alpine:v1.15-latest enviro ...

  7. [刷题] PTA 02-线性结构4 Pop Sequence

    模拟栈进出 方法一: 1 #include<stdio.h> 2 #define MAXSIZE 1000 3 4 typedef struct{ 5 int data[MAXSIZE]; ...

  8. [OS] 操作系统课程(三)

    工具 源码阅读:understand 源码文档自动生成工具:Doxygen 编译环境:gcc 运行环境:x86机器或QEMU 调试工具:QEMU+(GDB or IDE) IDE:Eclipse-CD ...

  9. curl: (35) SSL connect error

    curl: (35) SSL connect error weixin_34212762 2018-02-23 20:16:23  230  收藏 文章标签: 运维 版权 阿里云的机器,昨晚githu ...

  10. 1080p就是1920*1080,2k就是2560*1440,4k就是3840*2160

    1080p就是1920*1080,2k就是2560*1440,4k就是3840*2160 作者:容易视听链接:https://www.zhihu.com/question/24205632/answe ...