分解质因数(试除法)
原理
见《进阶指南》第137
页。
代码
void prime_factorize (int x) {
for (int i = 2; i <= x / i; ++ i) {
if (x % i == 0) {
int j = 0;
while (x % i == 0) {
++ j;
x /= i;
}
cout << i << "^(" << j << ")" << endl;
}
}
if (x > 1) cout << x << "^(1)" << endl;
}