将一个正整数N(1<N<32768)分解质因数,把质因数按从小到大的顺序输出。最后输出质因数的个数。
输入格式
一行,一个正整数
输出格式
两行,第一行为用空格分开的质因数
第二行为质因数的个数
样例输入
66
样例输出
2 3 113
样例输入
90
样例输出
2 3 3 5
4
样例输入
37
样例输出
37
1
#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){
cout<<i;
cnt++;
n=n/i;
if(i<=n)cout<<" ";
}
}
cout<<endl<<cnt;
return 0;
}
来源:CSDN
作者:明月寄天涯
链接:https://blog.csdn.net/qq_43356428/article/details/104901591