fork download
  1. #include <iostream>
  2. #include <vector>
  3. #include <string>
  4. #include <cmath>
  5.  
  6. using namespace std;
  7.  
  8. void factors(unsigned long long u, vector<unsigned long long>& fac)
  9. {
  10. unsigned long long s = sqrt(u);
  11.  
  12. for(unsigned long long i(2); i < s; ++i)
  13. {
  14. if(u % i == 0)
  15. {
  16. fac.push_back(i);
  17. u /= i;
  18. }
  19. }
  20. }
  21.  
  22. int main()
  23. {
  24. vector<unsigned long long> fac;
  25.  
  26. unsigned long long num(600851475143);
  27.  
  28. factors(num, fac);
  29.  
  30. for(auto i : fac)
  31. cout << i <<endl;
  32. }
  33.  
Success #stdin #stdout 0.01s 2984KB
stdin
Standard input is empty
stdout
71
839
1471
6857