題目描述:
東東在玩遊戲“Game23”。
在一開始他有一個數字n,他的目标是把它轉換成m,在每一步操作中,他可以将n乘以2或乘以3,他可以進行任意次操作。輸出将n轉換成m的操作次數,如果轉換不了輸出-1。
input:
輸入的唯一一行包括兩個整數n和m(1<=n<=m<=5*10^8).
output:
思路:
#include<iostream>
using namespace std;
int n,m,ans=-1;
void f(int x,int c)
{
if(x==m)
ans=c;
if(x>m) return;
f(x*2,c+1);
f(x*3,c+1);
}
int main()
{
cin>>n>>m;
f(n,0);
cout<<ans;
return 0;
}