比较水的大数。。。
代码:
import java.util.*;
import java.math.*;

public class Main{
    
public static void main( String args[] )
    
{
        Scanner in 
= new Scanner( System.in );
        
int cnt = 0;
        BigInteger fib1, fib2;
        BigInteger fla1, fla2;
        
while( in.hasNext() )
        
{
            fib1 
= BigInteger.valueOf(1);
            fib2 
= BigInteger.valueOf(2);
            
            fla1 
= in.nextBigInteger();
            fla2 
= in.nextBigInteger();
            
if( fla1.equals(BigInteger.valueOf(0)) && fla2.equals(BigInteger.valueOf(0))) break;
            
            cnt 
= 0;
            
            
whiletrue )
            
{
                
if( fib1.compareTo(fla1) >= 0 && fib1.compareTo(fla2) <= 0 ) cnt++;
                
if( fib2.compareTo(fla1) >= 0 && fib2.compareTo(fla2) <= 0 ) cnt++;
                
if( fib1.compareTo(fla2) > 0 || fib2.compareTo(fla2) > 0 ) break;
                fib1 
= fib1.add(fib2);
                fib2 
= fib2.add(fib1);
            }

            System.out.println( cnt );
        }

    }

}
posted on 2010-10-02 14:00 Vontroy 阅读(406) 评论(0)  编辑 收藏 引用 所属分类: 大数/高精度HDU

只有注册用户登录后才能发表评论。
网站导航: 博客园   IT新闻   BlogJava   知识库   博问   管理