v 0. Pasted by UnderFelixAbove as cpp at 2010-05-18 21:47:13 MSK and set expiration to never.

Paste will expire never.

  1. // Меньшиков. Тренировка 3.
  2. // 3A. Разложение на простые множители [pfactor]
  3. // ibelyaev: 28Feb2010
  4.  
  5. #include <iostream>
  6. #include <vector>
  7. #include <cmath>
  8.  
  9. using namespace std;
  10. int n;
  11. vector<int> muls;
  12. void FindAllSumMul()
  13. {
  14.     int curMul = 2;
  15.     int sqrt_N = sqrt((double)n);
  16.     while (curMul<=sqrt_N)
  17.     {
  18.         while (n % curMul == 0)
  19.         {
  20.             muls.push_back(curMul);
  21.             n /= curMul;
  22.         }
  23.         curMul++;
  24.         sqrt_N = sqrt((double)n);
  25.     }
  26.     if (n!=1)
  27.         muls.push_back(n);
  28. }
  29. void output()
  30. {
  31.     cout<<muls[0];
  32.     for (int i=1;i<muls.size();i++)
  33.         cout<<'*'<<muls[i];
  34. }
  35. int main()
  36. {
  37.     cin>>n;
  38.     FindAllSumMul();
  39.     output();
  40.     return 0;
  41. }


Editing is locked.