HDU 2040 亲和数 题解

由题意得:

1.目标很明确,就是算真因数之和

2.如果输入两个数中,任意一个数等于另一个数的真因数之和,这两个数就是亲和数

3.代码如下:

#include<stdio.h>

int proper_factor(int num)
{
    int i,sum=0;
    for(i=1;i<num;i++)
    {
        if(num%i==0)
            sum+=i;
    }
    return sum;
}

int main()
{
    int n,num1,num2,a,b;
    scanf("%d",&n);
    while(n--)
    {
        scanf("%d%d",&num1,&num2);
        a=proper_factor(num1);
        b=proper_factor(num2);
        if((a==num2)&&(b==num1))
            printf("YES\n");
        else
            printf("NO\n");
    }
    return 0;
}

猜你喜欢

转载自blog.csdn.net/aptx4869971/article/details/80958634