【暑期基础2】O HDU 2040 亲和数

来源:互联网 发布:vscode spring boot 编辑:程序博客网 时间:2024/05/29 19:39

题意

亲和数的定义:如果两个数中任何一个数都是另一个数的真约数之和,则这两个数就是亲和数。(也叫相亲数)


思路

设有 A、B 二数,如果 A 的约数之和等于 B 且 B 的约数之和等于 A ,则 A 和 B 是亲和数。


AC 代码 *

#include <stdio.h>  int main() {      int n;    int i,j;    int factor_sum( int );    scanf("%d\n", &n);    while ( n-- ) {        scanf("%d %d", &i, &j);        if ( ( factor_sum(j) == i ) && ( factor_sum(i) == j ) ) {            printf("YES\n");        } else {            printf("NO\n");        }    }      return 0;  }  int factor_sum(int n)  {      int i, sum = 0;      for ( i = 1; i < n ; i++) {          if ( n % i == 0)              sum += i;      }      return sum;  }  

* 注:在 HUST 的 Virtual Judge 上测试 AC

0 0
原创粉丝点击