程序超时问题怎么解决 求帮助
题目:如果整数a的全部因子(包括1,不包括a本身)之和等于b;
且整数b的全部因子(包括1,不包括b本身)之和等于a,则将整数a和整数b称为亲密数。求3000以内的全部亲密数。
程序代码:#include <stdio.h>
int sum(int x)
{
int i,su=0;
for (i=1;i<x;i++)
{
if (x%i==0)
{su=su+i;}
}
return su;
}
void main()
{
int i,j;
for (i=1;i<3000;i++)
{
for (j=i+1;j<3000;j++)
{
if (sum(i)==j&&sum(j)==i)
{printf ("%d...%d\n",i,j);}
}
}
}









