题目描述
输入一个自然数 nn,求这个数所有约数的和。
输入格式
输入一个自然数 nn。
输出格式
一个正整数。
输入数据 1
25
输出数据 1
31
提示
2525 的约数和 =1+5+25=31=1+5+25=31。
数据范围
1≤n≤1081≤n≤108
代码
#include<bits/stdc++.h>
using namespace std;
int main(){
long n,s;
cin>>n;
s=0;
for(int i=1;i*i<=n;i++){
if(n%i==0) s=s+i+n/i;
if(i*i==n) s=s-i;
}
cout<<s<<endl;
}