您的位置:首页 > 其它

ZOJ-2095

2014-03-14 23:14 405 查看
因子分解,直接暴力枚举了,时间不是很理想,水过去了

#include<stdio.h>
#include<math.h>

int factor_sum(int num)
{
if (num == 1)
return 0;
int i, sum = 1, n = (int) sqrt(num);
for (i = 2; i <= n; i++)
if (num % i == 0)
{
int div = num / i;
sum = i != div ? sum + i + div : sum + i;
}
return sum;
}

int main()
{
int n;
scanf("%d", &n);
while (n--)
{
int num;
scanf("%d", &num);
printf("%d\n", factor_sum(num));
}
return 0;
}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: