1098: 完美数
Time Limit: 1 Sec Memory Limit: 128 MBDescription
任何一个自然数的约数中都有1和它本身,我们把小于它本身的因数叫做这个自然数的真约数。 如6的所有真约数是1、2、3,而且6=1+2+3。像这样,一个数所有真约数的和正好等于这个数,通常把这个数叫做完美数。 古希腊人非常重视完美数。毕达哥拉斯发现它之后,人们就开始了对完美数的研究。 现在要求输出所有在m和n范围内的完美数。
Input
输入只有一行,是两个整数,(2<=m<=n<=32767),中间用空格隔开。
Output
输出范围内的所有完全数,数与数之间用空格隔开。
Sample Input
2 10
Sample Output
6
HINT
Source
#include<iostream>
using namespace std;
main()
{
long int m,n;
cin>>m>>n;
if(n>=10000)
{n=10000;}
for(int i=m;i<=n;i++)
{
int sum=0;
for(int j=1;j<i;j++)
{
if(i%j==0)
{sum+=j;}
}
if(sum==i)cout<<i<<" ";
}
}