package margusmartseppcode.From_10_to_19; public class Problem_12 { /** Get number of prime exponents */ static int getNoPE(int sum) { int dx = 1, exp = 1; for (int p : new int[] { 2, 3, 5, 7, 11, 13, 17, 19, 23, 29 }) { if (sum == 1) break; if (sum < p * p) return dx * 2; for (exp = 1; sum % p == 0; exp += 1) sum = sum / p; dx *= exp; } return dx; } public static void main(String[] args) { int size = 500, sum = 1; for (int i = 1; i < Integer.MAX_VALUE; i++, sum += i) if (getNoPE(sum) > size) break; System.out.println(sum); } }
Tuesday, September 8, 2009
Euler Problem 12 solution
Time (s): ~0.002
Subscribe to:
Post Comments (Atom)
No comments:
Post a Comment