http://acm.sdut.edu.cn:8080/vjudge/contest/view.action?cid=259#problem/C

Description

Recall the definition of the Fibonacci numbers:
f1 := 1
f2 := 2
fn := fn-1 + fn-2 (n >= 3)

Given two numbers a and b, calculate how many Fibonacci numbers are in the range [a, b].

 

Input

The input contains several test cases. Each test case consists of two
non-negative integer numbers a and b. Input is terminated by a = b = 0.
Otherwise, a <= b <= 10^100. The numbers a and b are given with no
superfluous leading zeros.
 

Output

For each test case output on a single line the number of Fibonacci numbers fi with a <= fi <= b.
 

Sample Input

10 100
1234567890 9876543210
0 0
 

Sample Output

5
4
#include <stdio.h>
#include <string.h>
#include <stdlib.h>
int a[][];
char str[][];
int main()
{
char m[],n[];
int i,j,sum;
memset(a,,sizeof(a));//大数斐波那契,主要是了解思想
a[][]=;
a[][]=;
a[][]=;
for (i=;i<=;i++)
{
for (j=;j<=;j++)
{
a[i][j]=a[i][j]+a[i-][j]+a[i-][j];
if (a[i][j]>)
{
a[i][j+]=a[i][j]/;
a[i][j]=a[i][j]%;
}
}
}
int flag=,k;
for(int i=;i<=;i++)
{
flag=;
k=;
for(int j=;j>=;j--)
{
if(flag||a[i][j])
{
flag=;
str[i][k]=a[i][j]+'';
k++;
}
}
str[i][k]='\0';
}
flag=;
/*for(i=100;i>=0;i--)
{
if(flag||a[100][i])
{
flag=1;
printf("%d",a[100][i]);
}
}*/
/*for(int i=40;i<=50;i++)
printf("%s\n",str[i]);*/
int l1,l2;
while(scanf("%s%s",n,m)!=EOF)
{
sum=;
l1=strlen(n);
l2=strlen(m);
if(n[]==''&&m[]=='') break;
for(int i=;i<=;i++)
{
if((strlen(str[i])>l1&&strlen(str[i])<l2))//如果这个数的长度在范围之(a,b)长度之间,则这个数一定属于(a,b);
{
sum++;
}
else if(l1==l2&&strlen(str[i])==l1&&strcmp(str[i],n)>=&&strlen(str[i])==l2&&strcmp(str[i],m)<=)//如果(a,b)两个数长度一样,则比较他们在字典中的大小。
{
sum++;
}
else if(l1!=l2&&strlen(str[i])==l1&&strcmp(str[i],n)>=)
{
sum++;
}
else if(l1!=l2&&strlen(str[i])==l2&&strcmp(str[i],m)<=)
{ sum++;
}
}
printf("%d\n",sum);;
}
return ;
}

How many Fibs?(poj 2413)大数斐波那契的更多相关文章

  1. java大数 斐波那契数列

    java大数做斐波那契数列:  思路:1.       2.可以用数组存着 import java.math.BigInteger; import java.util.Scanner; public ...

  2. hdu5686大数斐波那契

    Problem Description   度熊面前有一个全是由1构成的字符串,被称为全1序列.你可以合并任意相邻的两个1,从而形成一个新的序列.对于给定的一个全1序列,请计算根据以上方法,可以构成多 ...

  3. POJ 3070(求斐波那契数 矩阵快速幂)

    题意就是求第 n 个斐波那契数. 由于时间和内存限制,显然不能直接暴力解或者打表,想到用矩阵快速幂的做法. 代码如下: #include <cstdio> using namespace ...

  4. HDOJ/HDU 1250 Hat's Fibonacci(大数~斐波拉契)

    Problem Description A Fibonacci sequence is calculated by adding the previous two members the sequen ...

  5. POJ2506:Tiling(递推+大数斐波那契)

    http://poj.org/problem?id=2506 #include <iostream> #include <stdio.h> #include <strin ...

  6. HDOJ/HDU 5686 Problem B(斐波拉契+大数~)

    Problem Description 度熊面前有一个全是由1构成的字符串,被称为全1序列.你可以合并任意相邻的两个1,从而形成一个新的序列.对于给定的一个全1序列,请计算根据以上方法,可以构成多少种 ...

  7. HDOJ/HDU 1865 1sting(斐波拉契+大数~)

    Problem Description You will be given a string which only contains '1'; You can merge two adjacent ' ...

  8. P2626 斐波那契数列(升级版)(合数的质数分解, 大数为素数的概率十分小的利用)

    题目背景 大家都知道,斐波那契数列是满足如下性质的一个数列: f(1)=1f(1) = 1 f(1)=1 f(2)=1f(2) = 1f(2)=1 f(n)=f(n−1)+f(n−2)f(n) = f ...

  9. HPU 1471:又是斐波那契数列??(大数取模)

    1471: 又是斐波那契数列?? 时间限制: 1 Sec 内存限制: 128 MB 提交: 278 解决: 27 统计 题目描述 大家都知道斐波那契数列吧?斐波那契数列的定义是这样的: f0 = 0; ...

随机推荐

  1. div里粘贴文字后,移动光标至最后

    cursormanager.js //Namespace management idea from http://enterprisejquery.com/2010/10/how-good-c-hab ...

  2. Linux 下安装JDK1.8

    本文主要介绍的是如何是Linux环境下安装JDK的,因为Linux环境下,很多时候也离不开Java的,下面笔者就和大家一起分享如何jdk1.8的过程吧. 一.安装环境 操作系统:Red Hat Ent ...

  3. Docker关联使用的一些工具:Clip名字服务(转载)

    Clip名字服务 Clip(http://blog.puppeter.com/read.php?7)是一个名字服务C/S架构,它将传统的IP管理维度替换为名字服务即有意义可记忆的String.Clip ...

  4. DXP 内电层分割

    多层电路板中间层设置与内电层如何分割 多层电路板与一般的电路板不同之处在于,多层电路板除了顶层和底层之外,还有若干中间层,这些中间层可以是信号层(mid layer),也可以是内部电源/接地层(int ...

  5. selenium中javascript调试

    之前写了使用js输入长文件的文章,有同事在使用时,发现竟然无法输入,也不知道是什么原因,且用的还是id方式. 在参考网文后,才发现是js写的有问题,现总结一下 javascript调试,在firefo ...

  6. python中的null值

    在一个没有接口文档的自动化测试中,只能通过抓包及查日志查看发送的信息,其中有一个接口发送的信息如下: enable_snapshot": true, "new_size" ...

  7. TFS二次开发02——连接TFS

    在上一篇<TFS二次开发01——TeamProjectsPicher>介绍了  TeamProjectsPicher 对象,使用该对象可以很简单的实现连接TFS. 但是如果我们要实现自定义 ...

  8. springMVC + quartz实现定时器(任务调度器)

    首先我们要知道任务调度器(定时器)有几种,这边我会写三种 第一种是基于JDK的本身的一个定时器(优点:简单,缺点:满足不了复杂的需求) package com.timer1; import java. ...

  9. 推荐系统之余弦相似度的Spark实现

    推荐系统之余弦相似度的Spark实现 (1)原理分析    余弦相似度度量是相似度度量中最常用的度量关系,从程序分析中, 第一步是数据的输入, 其次是使用相似性度量公式 最后是对不同用户的递归计算. ...

  10. python2和python3的不同

    1.性能 Py3.0运行 pystone benchmark的速度比Py2.5慢30%.Guido认为Py3.0有极大的优化空间,在字符串和整形操作上可 以取得很好的优化结果. Py3.1性能比Py2 ...