include
include
include
include
include
bool is_prime(long v)
{
long i;
long count = 0;
for(i=1; i<=v; i++)
{
if(v%i == 0)
{
count++;
}
if(count > 2)
{
return false;
}
}
return true;
}
void judge_prime_elem(long i, long & input, std::vector<long> &v)
{
if(input % i == 0)
{
v.push_back(i);
input = input/i;
judge_prime_elem(i, input, v);
}
}</long>
int main()
{
using namespace std;
long input;
vector<long> v;
cin >> input;</long>
long i; long temp = input; for(i=2; i<= sqrt(input); i++) { if(is_prime(i)) { judge_prime_elem(i, input, v); } } if(input > 1) { v.push_back(input); } sort(v.begin(), v.end()); vector<long>::iterator it; for(it=v.begin(); it!=v.end();it++) { cout << *it << " "; } cout << endl; return 0;
}