亲和数
时间限制: 1000 ms 内存限制: 65536 KB
提交数: 404 通过数: 275
【题目描述】
自然数a的因子是指能整除a的所有自然数,但不含a本身。例如12的因子为:1,2,3,4,6。若自然数a的因子之和为b,而且b的因子之和又等于a,则称a,b为一对“亲和数” 。求最小的一对亲和数(a<>b)。
【输入】
(无)
【输出】
1行,分别为a和b(a<b)。
【输入样例】
(无)
【输出样例】
(无)
【来源】
【代码】
#include
#include
#include
using namespace std;
int sum(int n)//定义一个返回值为整数因子和的函数
{
int sum=0;
for(int i=1;i<=(int)n/2;i++)
{
if(n%i==0)//这个数字所有的因子
sum+=i;//所有因子之和
}
return sum;
}
int main()
{
for(int j=2;;j++)
{
if(j==sum(sum(j)))//判断a和b是否为亲和数
{
if(j