分解质因数

    xiaoxiao2022-07-13  151

    #include <bits/stdc++.h> using namespace std; int main() { int n; scanf("%d", &n); int flag = 1; for (int i = 2; i * i <= n; i++) { int cnt = 0; if (n % i == 0) { while (n % i == 0) { n /= i; cnt++; } if (flag) { flag = 0; } else { printf("*"); } if (cnt == 1) { printf("%d", i); } else if (cnt > 1) { printf("%d^%d", i, cnt); } } } if (n > 1) { printf("*%d\n", n); } }

     

    最新回复(0)