import java.util.*;
public class FenCandy {
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
while(scanner.hasNextLine()){
solve(Integer.parseInt(scanner.nextLine()));
}
}
private static void solve(int num) {
System.out.println(dfs(num));
}
private static int dfs(int num){
// 取出、放回、平均分配都要记一次
if(num == 1){//num=1直接返回0
return 0;
}
if(num/2==0){//平均分配 只算一次
return 1+dfs(num/2);
}else{//取出或放回 都只算一次
return 1+Math.min(dfs(num+1),dfs(num-1));
}
}
}