Files
python/GESP/Level5/GESP202309/20230901.cpp
HuangHai 1f397eca87 'commit'
2025-08-30 18:35:01 +08:00

39 lines
661 B
C++

#include <bits/stdc++.h>
using namespace std;
typedef long long LL;
LL n;
int idx;
int main() {
cin >> n;
// 拆分合数
for (LL p = 2; p * p <= n; p++) { // 2~sqrt(n)
if (n % p) // 如果p不是n的因数
continue;
idx++; // 第几个因数
int cnt = 0; // p的指数个数
while (n % p == 0) {
cnt++; // 有几个p因数
n /= p; // 除掉
}
if (idx > 1)
cout << " * ";
cout << p;
if (cnt > 1)
cout << "^" << cnt;
}
// 质数
if (n > 1) {
if (++idx > 1)
cout << " * ";
cout << n;
}
return 0;
}