60分#1#4#5#7求助
查看原帖
60分#1#4#5#7求助
1800410
ideas楼主2025/8/3 15:13
#include <iostream>
#include <cmath>
using namespace std;

int main() {
    long long n;
    cin >> n;
    bool isFirst = true; 
    for (int i = 2; i <= sqrt(n); ++i) {
        if (n % i == 0) {
            int count = 0;
            while (n % i == 0) {
                n /= i;
                count++;
            }
            if (!isFirst) {
                cout<<"*";
            }
            isFirst = false;
            if (count == 1) {
                cout<<i;
            } else {
                cout<<i<<"^"<<count;
            }
        }
    }
    if (n > 1) {
        if (!isFirst) {
            cout<<" * ";
        }
        cout<<n;
    }
    system("pause");
    return 0;
}
    
2025/8/3 15:13
加载中...