0
已解决
苏绅
新手光能
新手光能
题目链接: 酷町堂:8314
8314 质因数之和1
经验值:800
时间限制:1000毫秒
内存限制:128MB
题目描述 De**ion
求n的不同质因数,以及它们的和
输入描述 Input De**ion
输入一个数n
输出描述 Output De**ion
第一行输出n的所有不同的质因数(从小到大),空格隔开。
第二行输出它们的和。
样例输入 Sample Input
12
样例输出 Sample Output
2 3 5
数据范围及提示 Data Size & Hint
n ≤ 1015
#include<iostream>
#include<cmath>
using namespace std;
bool f(int n){
if(n==1){
return false;
}
for(int i=2;i<=sqrt(n);i++){
if(n%i==0){
return false;
}
}
return true;
}
int main(){
int n,sum=0;
cin>>n;
for(int i=2;i<=n;i++){
if(n%i==0&&f(i)){
cout<<i<<' ';
sum+=i;
}
}
cout<<endl<<sum;
return 0;
}