欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

第十周作业 A题

程序员文章站 2022-05-11 11:13:15
...

A-GAME23

题目描述:

第十周作业 A题

解题思路:
如果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;
 }