c++简易解法
质数因子
http://www.nowcoder.com/questionTerminal/196534628ca6490ebce2e336b47b3607
#include <iostream>
#include <vector>
#include <math.h>
using namespace std;
void prime(long a){
while(a>1){
int temp = 0;
for(int i =2;i<=sqrt(a);i++){
if(a%i==0){
temp=i;
printf("%d ",i);
break;
}
}
if(temp==0){
printf("%d ",a);
a=1;
}
else a=a/temp;
}
}
int main() {
long a ;
while (cin >> a) { // 注意 while 处理多个 case
// 64 位输出请用 printf("%lld")
prime(a);
}
}
查看15道真题和解析