fork download
  1. #include <bits/stdc++.h>
  2. using namespace std;
  3.  
  4. int main() {
  5. int angka;
  6. cin >> angka;
  7.  
  8. vector<int> data;
  9. while (angka % 2 == 0) {
  10. data.push_back(2);
  11. angka /= 2;
  12. }
  13.  
  14. for (int a = 3; a * a <= angka; a += 2) {
  15. while (angka % a == 0) {
  16. data.push_back(a);
  17. angka /= a;
  18. }
  19. }
  20.  
  21. if (angka > 1) data.push_back(angka);
  22.  
  23. int a = 0;
  24. int tag = 0;
  25. for (a = 0; a < data.size(); a++) {
  26. int jumlah = 0;
  27. tag = data[a];
  28. for (int b = a; b < data.size(); b++) {
  29. if (tag == data[b]) {
  30. jumlah++;
  31. } else {
  32. break;
  33. }
  34. }
  35. cout << data[a] << "^" << jumlah << " ";
  36. }
  37. }
  38.  
Success #stdin #stdout 0.01s 5312KB
stdin
75
stdout
3^1 5^2 5^1