For this Question: You have two numbers X and Y in one operation you can replace either of the numbers to their sum i.e in one operation you can either have (X+Y, Y) or (X, X+Y).
Find the minimum number of operations it takes to transform one of the numbers to N. Assuming initial value of X and Y are (1, 1).The input contains a single integer N.

Constraints:-
1 <= N <= 1000000Print the minimum number of operations required.Sample Input
5

Sample Output
3

Explanation
(1, 1) -> (2, 1) -> (2, 3) -> (2, 5)

Sample Input
1

Sample Output
0, I have written this Solution Code: import java.io.*;
import java.util.*;



class Main {
	public static void main (String[] args) throws IOException {
		BufferedReader br = new BufferedReader(new InputStreamReader(System.in));
		int n = Integer.parseInt(br.readLine());
		int x = 1;
		int y = 1;
		int count = 0;
		while(x<n && y<n){
		if(x<=y){
			x = x+y;
		} else{
			y = x+y;
		}
		count++;
	}
	if(n<100000)
	System.out.print(count);
	else
	System.out.print(count+1);
	}


}, In this Programming Language: Java, Now tell me if this Code is compilable or not?