南邮 OJ 1025 完数

来源:互联网 发布:mysql and or 同时存在 编辑:程序博客网 时间:2024/06/05 02:50


完数

时间限制(普通/Java) : 1000 MS/ 3000 MS          运行内存限制 : 65536 KByte
总提交 : 2414            测试通过 : 516 

比赛描述

自然数中,完数寥若晨星,请在从1到某个整数范围中打印出所有的完数来。所谓“完数”是指一个数恰好等于它的所有不同因子之和。例如,6是完数,因为6=1+2+3。而24不是完数,因为24≠1+2+3+4+6+8+12=36。



输入

输入数据中含有一些整数n(1<n<10000)。

输出

对于每个整数n,输出所有不大于n的完数。每个整数n的输出由n引导,跟上冒号,然后是由空格开道的一个个完数,每个n的完数列表应占独立的一行。

样例输入

100
5000

样例输出

100: 6 28
5000: 6 28 496

题目来源

ZJUT


#include <iostream>using namespace std;#include <cstdio>int main(void){int n=0;while(cin>>n){cout<<n<<":";if(n>6)cout<<" "<<6;if(n>28)cout<<" "<<28;if(n>496)cout<<" "<<496;if(n>8128)cout<<" "<<8128;cout<<endl;}}/*int main(void){int m=0,n=0,i=0,j=0;while(cin>>n){cout<<n<<":";for(m=6;m<n;++m){for(i=1,j=0;i<m;++i){if(m%i==0){j+=i;}}if(j==m){cout<<" "<<m;}}cout<<endl;}}*/




0 0
原创粉丝点击