码迷,mamicode.com
首页 > 其他好文 > 详细

[CodeForces 1141A] Game 23

时间:2019-04-20 22:53:25      阅读:182      评论:0      收藏:0      [点我收藏+]

标签:答案   链接   problem   class   输出   结果   for   can   href   

题目链接:http://codeforces.com/problemset/problem/1141/A

首先,nn一定要是mm的倍数。否则就无法转换,输出-1;

然后令k=.\frac{m}{n} ,即k=.\frac{m}{n} .

将k 分解质因数,若分解结果是k=.\frac{m}{n} ,那答案就是k=.\frac{m}{n} 。

如果无法分解成k=.\frac{m}{n} ,那么输出-1。

AC代码:

#include <cstdio>

using namespace std;

int main() {
    int n,m;
    while(scanf("%d%d",&n,&m) != EOF) {
        if(m % n != 0) {
            puts("-1\n");
        } else if (n == m) {
            puts("0\n");
        } else {
            int k = m / n;
            int cnt = 0;
            while (k % 2 == 0) {
                cnt++;
                k /= 2;
            }
            while (k % 3 == 0) {
                cnt++;
                k /= 3;
            }
            if(k != 1) {
                puts("-1\n");
            } else {
                printf("%d\n",cnt);
            }
        }
    }
    return 0;
}

[CodeForces 1141A] Game 23

标签:答案   链接   problem   class   输出   结果   for   can   href   

原文地址:https://www.cnblogs.com/youpeng/p/10743090.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!