hdu 1316(java大数)
/* * java大数 */ import java.util.Scanner; import java.math.BigInteger; public class hdu1316 { public static void main(String args[]) { BigInteger []fib = new BigInteger[500]; fib[1] = BigInteger.ONE; fib[2] = new BigInteger("2"); for (int i=3; i<500; ++i) { fib[i] = fib[i-1].add(fib[i-2]); } BigInteger a, b; Scanner cin = new Scanner(System.in); a = cin.nextBigInteger(); b = cin.nextBigInteger(); while (a.compareTo(BigInteger.ZERO)!=0 || b.compareTo(BigInteger.ZERO)!=0) { int count = 0; for (int i=1; i<500; ++i) { if (fib[i].compareTo(a)>=0 && fib[i].compareTo(b)<=0) { ++count; } if (fib[i].compareTo(b)>0) { break; } } System.out.println(count); a = cin.nextBigInteger(); b = cin.nextBigInteger(); } } }