您的位置:首页 > 编程语言 > Java开发

poj 2413 java How many Fibs?

2011-02-27 01:57 435 查看
高精度题,java水过~

需要注意的是

0 1

0 2

1 2

2 3

这几个输入

}
import java.math.BigDecimal;
import java.util.Scanner;
public class Main {
public static void main(String[] args){
Scanner cin=new Scanner(System.in);
BigDecimal[] f=new BigDecimal[500];
int af=0,bf=0;
f[0]=new BigDecimal(1);
f[1]=new BigDecimal(2);
for(int i=2;i<500;i++){
f[i]=f[i-1].add(f[i-2]);
}
while(cin.hasNext()){
boolean isGetA=false;
BigDecimal a=new BigDecimal(cin.next());
BigDecimal b=new BigDecimal(cin.next());
if(b.compareTo(new BigDecimal(0))==0)break;
for(int n=0;n<500;n++){
if(isGetA==false){
if(f
.compareTo(a)!=-1){
af=n;
isGetA=true;
}
}
if(f
.compareTo(b)==1){
bf=n;
break;
}
}
System.out.println(bf-af);
}
}
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: