Problem1063--亲和数1063: 亲和数
Time Limit: 1 Sec Memory Limit: 128 MB
Submit: 32 Solved: 9
[Submit] [Status] [Web Board] [Creator:]Description
自然数a的因子是指能整除a的所有自然数,但不含a本身。例如12的因子为:1、2、3、4、6。若自然数的因子之和为b,而且b的因子之和又等于a,则称a,b为一对“亲和数”。求最小的n对亲和数。
编写程序求最小的n对亲和数,每行输出一个(输出时严格按a升序输出)。
Input
一个数,表示题目中的n。
Output
共n行,每行表示一对亲和数。
Sample Input
1
Sample Output
6 6
HINT
#include <iostream>
using namespace std;
int main()
{
int a,b,suma=0,sumb=0;
int i,n,c;
cin>>n;
a=4;c=1;
while(c<=n)
{suma=0;sumb=0; //错误
for(i=1;i<a;i++) //a=12
if(a%i==0) suma=suma+i;
for(i=1;i<suma;i++) //suma=16
if(suma%i==0) sumb=sumb+i;
if(a==sumb&&a<=suma) { cout<<a<<"和"<<suma<<"是亲和数"<<endl; c++;}
a++;
}
return 0;
}
Source/Category
[Submit] [Status]