java 大数:
import java.math.BigInteger;
import java.util.Scanner;
public class Main
{
static int INF=500;
public static void main(String[] args) {
Scanner cin = new Scanner(System.in);
BigInteger[] f = new BigInteger[INF+5];
f[1]=BigInteger.valueOf(1);
f[2]=BigInteger.valueOf(2);
for(int i=3;i<=INF;i++)
f[i]=f[i-1].add(f[i-2]);
while(true)
{
BigInteger x= cin.nextBigInteger();
BigInteger y= cin.nextBigInteger();
if(y.compareTo(BigInteger.ZERO)==0) return;
int cnt=0;
for(int i=1;i<=INF;i++)
if(f[i].compareTo(x)>=0&&f[i].compareTo(y)<=0)
cnt++;
System.out.println(cnt);
}
}
}
在做这题目之前做了一道求大斐波那契数列的对应项,那一题的f(2)=1;这一题是2,全WA在这上面了,不要惯性思维啊,就算题意简单也要看清题目啊。