算法训练 8-2求完数
时间限制:50.0s 内存限制:256.0MB
问题描述
如果一个自然数的所有小于自身的因子之和等于该数,则称为完数。设计算法,打印1-9999之间的所有完数。
样例输出
与上面的样例输入对应的输出。
例:
例:
数据规模和约定
1-9999
/**
*
* @author hhit.soft141.xxf
* @date 2017-2-18
*
*/
public class Main {
/**
* @param args
*/
public static void main(String[] args) {
int sum = 1;
for (int i = 6; i <= 9999; i++) {
for (int j = 2; j < i; j++) {
if (i % j == 0 && i / j >= j) {
sum += (j + i / j);
}
}
if (sum == i) {
System.out.println(i);
}
sum = 1;
}
}
}