当前位置: 代码迷 >> 综合 >> 计算器 (贝壳笔试题)
  详细解决方案

计算器 (贝壳笔试题)

热度:27   发布时间:2024-01-20 21:53:30.0

描述

假设有这样一个计算器,该计算器只有两个按钮,按下第一个按钮能使显示数值减少1,按下第二个按钮能使显示数值乘以2,当前显示数值为N,那么至少要按多少次按钮才能使显示数值变成M?

输入

输入两个整数N和M,1≤N,M≤109。

输出

输出使显示数值变成M的最少按按钮次数。

输入样例 1 

4  5                                                                                                                                                                                                     

输出样例 1

3                                                                                                                                                                                                            

实现代码:


import java.util.Scanner;public class Main {public static void main(String[] args) {Scanner in=new Scanner(System.in);int count=0;int n=in.nextInt();int m=in.nextInt();while(true){if(n>=m){count+=n-m;System.out.println(count);break;}else{if(m%2!=0)count++;m=(int)Math.ceil(m/2.0);count++;}}}}

 

  相关解决方案