P5734: 完美数

传统题
1.000s 时间限制
128MB 内存限制
44 提交
23 解决

【题目描述】
编程计算并输出0~n之间所有的完美数,要求在主函数中调用函数来完成。
说明:如果有一数n,其真因数(Proper factor)的总和等于n,则称之为完美数(Perfect Number), 例如以下几个数都是完美数: 6 = 1 + 2 + 3  28 = 1 + 2 + 4 + 7 + 14  496 = 1 + 2 + 4 + 8 + 16 + 31 + 62 + 124 + 248   
程式基本上不难,第一眼看到时会想到求出所有真因数,再进一步求因数和,不过若n值很大,则此法会花费许多时间在回圈测试上,十分没有效率,例如求小于10000的所有完美数。
【输入】
输入一个正整数 n (n<10000)
【输出】
输出0~n之间所有的完美数。
输出有多行。一行一个数。
【样例输入】复制
100
【样例输出】 复制
6
28

题目类型~

函数 

咻咻~

提交答案 状态