A-GAME23
题目描述:
解题思路:
如果m能由n和2、3的乘积组合而成,那么m/n就一定能由2、3组合而成,就一直如果%3= =0 就除以3.,如果%2= =0 就除以2,最后如果能得到1 则输出步数,如果不能得到1就说明不可以
#include<iostream>
using namespace std;
int main()
{
int ans=0;
int n,m;
cin>>n>>m;
if(m%n!=0)
{
cout<<"-1";
return 0;
}
int f=m/n;
//cout<<f<<endl;
while(f%3==0) {
f/=3; ans++;//cout<<f<<endl;
}
while(f%2==0)
{
f/=2; ans++; //cout<<f<<endl;
}
if(f!=1)
{
cout<<"-1";
return 0;
}
else cout<<ans;
return 0;
}