#include <bits/stdc++.h>
#include <iostream>
using namespace std;
vector<int> primeFactors(int n) {
vector<int> factors;
for (int i = 2; i * i <= n; i++) {
while (n % i == 0) {
factors.push_back(i);
n /= i;
}
}
if (n > 1) {
factors.push_back(n);
}
return factors;
}
int main() {
vector<int> arr = {12, 18, 25, 30};
for (int n : arr) {
vector<int> factors = primeFactors(n);
for (int x : factors) {
cout << x << " ";
}
cout << endl;
}
}
I2luY2x1ZGUgPGJpdHMvc3RkYysrLmg+CiNpbmNsdWRlIDxpb3N0cmVhbT4KdXNpbmcgbmFtZXNwYWNlIHN0ZDsKCnZlY3RvcjxpbnQ+IHByaW1lRmFjdG9ycyhpbnQgbikgewogICAgdmVjdG9yPGludD4gZmFjdG9yczsKCiAgICBmb3IgKGludCBpID0gMjsgaSAqIGkgPD0gbjsgaSsrKSB7CiAgICAgICAgd2hpbGUgKG4gJSBpID09IDApIHsKICAgICAgICAgICAgZmFjdG9ycy5wdXNoX2JhY2soaSk7CiAgICAgICAgICAgIG4gLz0gaTsKICAgICAgICB9CiAgICB9CgogICAgaWYgKG4gPiAxKSB7CiAgICAgICAgZmFjdG9ycy5wdXNoX2JhY2sobik7CiAgICB9CgogICAgcmV0dXJuIGZhY3RvcnM7Cn0KCmludCBtYWluKCkgewogICAgdmVjdG9yPGludD4gYXJyID0gezEyLCAxOCwgMjUsIDMwfTsKCiAgICBmb3IgKGludCBuIDogYXJyKSB7CiAgICAgICAgdmVjdG9yPGludD4gZmFjdG9ycyA9IHByaW1lRmFjdG9ycyhuKTsKCiAgICAgICAgZm9yIChpbnQgeCA6IGZhY3RvcnMpIHsKICAgICAgICAgICAgY291dCA8PCB4IDw8ICIgIjsKICAgICAgICB9CiAgICAgICAgY291dCA8PCBlbmRsOwogICAgfQp9Cg==