小明去蛋糕店里购买蛋糕,蛋糕店里出售的蛋糕重量都是2的幂次方(例如1,2,4,8……这样)个单位,如果小明需要购买的蛋糕重量不正好是2的幂,就需要找一块蛋糕来进行切割,蛋糕的切割方式很简单,每次都是一分为二,这样切割出来的蛋糕仍然满足每块都是2的幂次方个单位。现在小明需要购买一块K个单位的蛋糕,那么蛋糕店里应该选取重量最小为多少的蛋糕来进行切割,以及最少需要切割几次才能满足小明的要求?
输入一个整数K。 输出两个整数,分别表示选取的蛋糕最小重量,以及最小切割次数。
Sample Input 1
6
Sample Output 1
8 2
Sample Input 2
7
Sample Output 2
8 3
Sample Input 3
5
Sample Output 3
8 3
1<=K<=10^6;
样例1解释:
先将8分成2块分别为4个单位的蛋糕,然后再将其中一个重量为4个单位的蛋糕分成2块分别为2个单位的蛋糕,这样一块4个单位+一块2个单位的蛋糕就凑成了一块6个单位的蛋糕。
样例2解释:
先将8分成2块分别为4个单位的蛋糕,然后再将其中一个重量为4个单位的蛋糕分成2块分别为2个单位的蛋糕,再将其中一个重量为2个单位的蛋糕分成2块分别为1个单位的蛋糕,这样一块4个单位+一块2个单位+一块1个单位的蛋糕就凑成了一块7个单位的蛋糕。
样例3解释:
先将8分成2块分别为4个单位的蛋糕,然后再将其中一个重量为4个单位的蛋糕分成2块分别为2个单位的蛋糕,再将其中一个重量为2个单位的蛋糕分成2块分别为1个单位的蛋糕,这样一块4个单位+一块1个单位的蛋糕就凑成了一块5个单位的蛋糕。