#31407: C++複雜解法


jason096727@gmail.com (Jason Ho)

學校 : 高雄市苓雅區福東國民小學
編號 : 189939
來源 : [111.248.248.69]
最後登入時間 :
2024-10-23 21:12:20
a010. 因數分解 | From: [150.116.71.227] | 發表日期 : 2022-07-28 19:19

#include <bits/stdc++.h>

using namespace std;

int main()
{
    int n, i=2;
    vector<int> v;
    cin >> n;
    while (i<=n){
        if (n%i==0){
            v.push_back(i);
            n = n/i;
            i=2;
        }
        else {
            i++;
        }
    }
    int j=0;
    while (j<v.size()){
        int b=0;
        cout << v[j];
        if (count(v.begin(), v.end(), v[j])>1){
            cout << '^' << count(v.begin(), v.end(), v[j]);
            j += count(v.begin(), v.end(), v[j]);
            b=1;
        }
        if (b==0){
            j++;
        }
        if (j!=v.size()){
            cout << " * ";
        }
    }

    return 0;
}

 
ZeroJudge Forum