import java.math.BigDecimal;
import java.util.Collections;
import java.util.LinkedList;
import java.util.Scanner;
public class fib{
public static void main(String[] args) {
Scanner sc = new Scanner(System.in);
try {
String a = sc.next("[0-9]+");
sc.close();
//System.out.println(a);
if (a.length() < 0 || a.length() > 18 ){
System.out.println("NIE");
return;
} else if (a.compareTo("0") == 0) {
System.out.println(0);
return;
} else if (a.compareTo("1") == 0) {
System.out.println(1);
return;
} else {
BigDecimal k = new BigDecimal(10).pow(100);
//System.out.println(k.toPlainString());
BigDecimal f = new BigDecimal(0);
BigDecimal ff = new BigDecimal(1);
BigDecimal kk = new BigDecimal(2);
while (kk.compareTo(k) < 0){
BigDecimal ftemp = ff;
ff = ff.add(f);
f = ftemp;
if (ff.toPlainString().endsWith(a)){
System.out.println(kk.toPlainString());
//break;
return;
}
kk = kk.add(BigDecimal.ONE);
}
}
} catch (Exception e) {
}
System.out.println("NIE");
}
}
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 | import java.math.BigDecimal; import java.util.Collections; import java.util.LinkedList; import java.util.Scanner; public class fib{ public static void main(String[] args) { Scanner sc = new Scanner(System.in); try { String a = sc.next("[0-9]+"); sc.close(); //System.out.println(a); if (a.length() < 0 || a.length() > 18 ){ System.out.println("NIE"); return; } else if (a.compareTo("0") == 0) { System.out.println(0); return; } else if (a.compareTo("1") == 0) { System.out.println(1); return; } else { BigDecimal k = new BigDecimal(10).pow(100); //System.out.println(k.toPlainString()); BigDecimal f = new BigDecimal(0); BigDecimal ff = new BigDecimal(1); BigDecimal kk = new BigDecimal(2); while (kk.compareTo(k) < 0){ BigDecimal ftemp = ff; ff = ff.add(f); f = ftemp; if (ff.toPlainString().endsWith(a)){ System.out.println(kk.toPlainString()); //break; return; } kk = kk.add(BigDecimal.ONE); } } } catch (Exception e) { } System.out.println("NIE"); } } |
English