您的位置:首页 > 其它

问题 F: 因子和

2016-05-22 21:33 337 查看

问题 F: 因子和

时间限制: 1 Sec 内存限制: 128 MB

提交: 61 解决: 10

[提交][状态][讨论版]

题目描述

给定一个数n,求n的因子和。

n的因子:所有的m满足n % m == 0。

输入

第一行输入一个整数t,代表有t组测试数据(t <= 100)

接下来有t行,每行有一个整数n。

保证1 <= n <= 100000000。

输出

输出一个整数代表因子和。请使用long long 代替 int。

样例输入

4
1
2
3
4


样例输出

1
3
4
7


提示

#include<stdio.h>

#include<math.h>

int main()

{

int t,a;

int i,n;

long long s;

scanf("%d",&t);

while(t--)

{

s=0;

scanf("%d",&n);

if(n==1)

printf("1\n");

else

{

for(i=1;i*i<=n;i++)

{

if(n%i==0)

s+=(i+n/i);

}

i--;

if(i*i==n)

s-=i;

printf("%lld\n",s);

}

}

return 0;

}

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: