OJ.具有下列性质的数

来源:互联网 发布:2000到2008年网络歌曲 编辑:程序博客网 时间:2024/05/17 02:17

如果整数A的全部因子(包括1,不包括A本身)之和等于B;且整数B的全部因子(包括1,不包括B本身)之和等于A,则将整数A和B称为亲密数。求n(220<=n<=10000)以内的全部亲密数。

1000

----

220 284

#include <stdio.h>#include <stdlib.h>#include <math.h>int main(){    int n;    int sum1=0,sum2=0;    int k;    int i,j;    while(~scanf("%d",&n))    {          for(k=1;k<=n;k++)        {            sum1=0,sum2=0;            for(i=1;i<=k/2;i++)            {                if(k%i==0)  sum1+=i;            }            for(j=1;j<=sum1/2;j++)            {                if(sum1%j==0)   sum2+=j;            }            if(sum2==k && sum1>k && sum1<=n)                printf("%d %d\n",k,sum1);        }    }    return 0;}


0 0