本文主要是介绍Codeforces 490D Chocolate(数论),希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目链接:Codeforces 490D Chocolate
两个种变换方式无疑是减掉一个因子3加上一个因子2和减掉一个因子2,所以从因子的角度出发,如果两组数存在不同的质因子肯定是不可以的。剩下的就是构造答案了。
#include <cstdio>
#include <cstring>
#include <cmath>
#include <algorithm>using namespace std;
const int maxn = 105;int Arr[2][2], fac[2][maxn], cnt[2][2];void divFact(int* a, int* b, int& c, int n) {while (n % 2 == 0) {b[0]++;n /= 2;}while (n % 3 == 0) {b[1]++;n /= 3;}int m = sqrt(n);for (int i = 5; i <= m; i++) {while (n % i == 0) {a[++c] = i;n /= i;}if (n < i)break;}if (n != 1)a[++c] = n;
}
这篇关于Codeforces 490D Chocolate(数论)的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!