将一个正整数N(1<N<32768)分解质因数,把质因数按从小到大的顺序输出。最后输出质因数的个数。
输入格式
一行,一个正整数
输出格式
两行,第一行为用空格分开的质因数
第二行为质因数的个数
样例输入
66
样例输出
2 3 113
样例输入
90
样例输出
2 3 3 5
4
样例输入
37
样例输出
37
1
#include<stdio.h>
#include<iostream>
using namespace std;
int main ()
{
int n, cnt=0;
cin >> n;
// cout << n << "=";
for(int i=2; i<n ; i++)
{
while(n%i == 0 && n!=2)
{
cout << i << " ";
n /= i;
cnt ++;
}
}
cout << n << endl << cnt+1 << endl;
return 0;
}