#10439: C++答案分享


superbear0418 (bear0418)

學校 : 不指定學校
編號 : 54311
來源 : [61.57.98.63]
最後登入時間 :
2015-11-09 20:38:40
a010. 因數分解 | From: [111.243.157.20] | 發表日期 : 2015-11-08 00:39

#include <iostream>

#include <cmath>

 

using namespace std;

      

int main()

{

    long input;

    while(cin >> input){

    int i = 2;  

    int count = 0;

    int base = 0;

    

    while ( i <= input ){

        

        if( input%i == 0){

            count += 1;

            base = i;

            input /= i;

        }

        else{

             if(count > 1)

                      cout << base << "^" << count << " * ";

             if(count == 1)

                      cout << base << " * ";

             count = 0;

             i++;

        }

        

        

        

    }

    if(count > 1)

             cout << base << "^" << count << endl;

    if(count == 1)

             cout << base << endl;

 

     

    if ( i == input )

        cout << i << endl;

    }

    

    return 0;

}   

 
ZeroJudge Forum