본문 바로가기

코딩 테스트/Project Euler @ kr

25) 피보나치 수열에서 처음으로 1000자리가 되는 항은 몇 번째?

반응형

http://euler.synap.co.kr/prob_detail.php?id=25


단순히 1000자리수가 되는 항을 구했는데, 뭔가 잘못된 느낌..


Skillist 설명---------------------------------------------------------------------------------


public static void main(String[] args){

BigInteger f1 = BigInteger.valueOf(1), f2 = BigInteger.valueOf(1);

BigInteger ten = BigInteger.valueOf(10), temp;

int num = 2;

int jarisu = 1;

while(true){

num += 1;

temp = f1.add(f2);

f1 = f2;

f2 = temp;


if(f2.compareTo(ten) != -1){

ten = ten.multiply(BigInteger.valueOf(10));

jarisu += 1;

if(jarisu >= 1000){

System.out.println(num);

break;

}

}

}

}

반응형