fork download
  1. /******************************************************************************
  2.  
  3.   Online C++ Compiler.
  4.   Code, Compile, Run and Debug C++ program online.
  5. Write your code in this editor and press "Run" button to compile and execute it.
  6.  
  7. *******************************************************************************/
  8.  
  9. #include <iostream>
  10. #include <vector>
  11. using namespace std;
  12. int ans = 0;
  13. vector< int >fun(int n , int k){
  14. vector < int > v;
  15. long long prod = 1 ;
  16. int N = n;
  17. bool ck = 1;
  18. for (int i = 2 ; i * i <= n ; i ++){
  19.  
  20. while (n % i == 0){
  21. n/=i;
  22. v.push_back(i);
  23. prod *= i;
  24. if (v.size() == k - 1 && n != 1){
  25. v.push_back(N/prod);
  26. ck = false;
  27. break;
  28. }
  29. }
  30. if (!ck)break;
  31.  
  32. }
  33. if (n != 1 && ck )v.push_back(n);
  34. return v;
  35.  
  36.  
  37.  
  38. }
  39. int main()
  40. {
  41. long long n , k;
  42. cin >> n >> k;
  43. if (k == 1){cout << n; return 0;}
  44.  
  45. vector <int > v = fun(n , k);
  46. if (v.size() == k){
  47. for (int i = 0 ; i < v.size(); i ++){
  48. cout << v[i] <<" ";
  49. }
  50. }
  51. else cout << -1 ;
  52.  
  53. return 0;
  54. }
  55.  
Success #stdin #stdout 0.01s 5288KB
stdin
Standard input is empty
stdout
-1