杭电1316(How Many Fibs?)
2015-04-24 09:29
337 查看
点击打开杭电1316
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].
Problem 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
代码实现
import java.math.BigInteger; import java.util.Scanner; class Main{ public static void main(String[] args){ Scanner sc = new Scanner(System.in); BigInteger[] fib=new BigInteger[1005]; fib[1]=BigInteger.valueOf(1); fib[2]=BigInteger.valueOf(2); for(int i=3;i<1005;i++){ fib[i]=fib[i-1].add(fib[i-2]); } int numb; while(sc.hasNextBigInteger()){ BigInteger a=sc.nextBigInteger(); BigInteger b=sc.nextBigInteger(); if(a.equals(BigInteger.valueOf(0))&&b.equals(BigInteger.valueOf(0))){ break; } numb=0; for(int i=1;i<1005;i++){ if(fib[i].compareTo(a)>=0&&fib[i].compareTo(b)<=0){ numb++; } if(fib[i].compareTo(b)>0){ break; } } System.out.println(numb); } } }
相关文章推荐
- 杭电OJ(HDOJ)1316题:How many Fibs?(大数操作——比较)
- 杭电 1316 How Many Fibs?
- 杭电oj-1316-How Many Fibs?
- 杭电 1316 How Many Fibs?
- HDOJ 1316 How Many Fibs?
- hdoj 1316 How Many Fibs?(大数)
- BigNums——HDUOJ 1316 - How Many Fibs?(斐波那契个数 + 二分法 + 预处理)
- HDU1316 How Many Fibs? 【大数】
- hdu 1316 How Many Fibs?
- hdu 1316 How Many Fibs?
- HDU 1316 How Many Fibs? 大数
- HDOJ 1316 How Many Fibs?
- HDU 1316-How Many Fibs?(大数类)
- hdu 1316 How Many Fibs? (大数问题)
- hdu 1316 How Many Fibs?(大数,二分)
- How Many Fibs_hdu_1316(大数).java
- How Many Fibs_hdu_1316(大数).java
- hdu 1316 How Many Fibs?(高精度加法+ 斐波那契数)
- hdu 1316 poj 2413 how many Fibs
- HDU 1316 How Many Fibs?