Project Euler 21
- d(n) の計算は、素直に割り算している。
using System; class PE021 { static int SumProperDivisors(int n) { int sum = 0; for (int i = 1; i*2 <= n; i++) { if (n % i == 0) { sum += i; } } return sum; } static int Calc() { int ans = 0; for (int a = 2; a <= 10000; a++) { int b = SumProperDivisors(a); if (a < b && a == SumProperDivisors(b)) { // Console.WriteLine("{0} - {1}", a, b); ans += a + b; } } return ans; } static void Main() { Console.WriteLine(Calc()); } }