4362: GESP C++ 五级 3因数分解202309

内存限制:128 MB 时间限制:1.000 S
评测方式:文本比较 命题人:
提交:1 解决:1

题目描述

样例输入 复制

6

样例输出 复制

2 * 3

提示

#include <iostream>
using namespace std;
int main() {
    long long N = 0;
    cin >> N;
    bool first = true;
    for (long long p = 2; p * p <= N; p++) {
        if (N % p != 0)
            continue;
        int cnt = 0;
        while (N % p == 0) {
            cnt++;
            N /= p;
        }
        if (first) {
            first = false;
        } else {
            cout << " * ";
        }
        cout << p;
        if (cnt > 1)
            cout << "^" << cnt;
    }
    if (N > 1) {
        if (first) {
            first = false;
        } else {
            cout << " * ";
        }
        cout << N;
    }
    cout << endl;
    return 0;
}