链接地址为:欧拉项目Project21
研究了一下论坛上的代码之后,发现自己写的上衣版本的代码还是替冗余,本着简洁的态度,贴上新的代码。
package com.euler;
public class P21_2 {
public static void main(String[] args) {
int sum = 0;
for (int i = 1; i <= 10000; i++) {
if (count(i)!= i&&count(count(i)) == i) {
sum += i;
}
}
System.out.println(sum);
}
//计算出X的所有约数(除了本身)的和。
public static int count(int x) {
int sum = 1;
for (int i = 2; i < Math.sqrt(x) + 1; i++) {
if (x % i == 0) {
sum = sum+i+x/i;
}
}
return sum;
}
}