Problem 27 auf projecteuler.net
Hier meine Lösung zu Problem 27 auf projecteuler.net in der Programmiersprache Java.
Bei der Lösung habe ich auf brute force gesetzt. Trotzdem berechnet sich das Ergebnis recht schnell:
Result: -59231
real 0m0.316s
user 0m0.325s
sys 0m0.008s
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 |
package net.mborm.euler.problems; public class Problem27 { private static boolean is_prime(int n) { if(n == 1) return false; if(n == 2) return true; int r = (int) Math.floor(Math.sqrt(n)); int i; for(i = 2; i <= r; ++i) if(n % i == 0) break; return (r == i - 1); } public static void main(String[] args) { int[] sequence = new int[2]; int result = 0; for(int a = -1000; a <= 1000; a++) { for(int b = -1000; b <= 1000; b++) { int n = 0; while(is_prime(Math.abs(n * n + a * n + b))) n++; if(n > result) { result = n; sequence[0] = a; sequence[1] = b; } } } System.out.println("Result: "+sequence[0] * sequence[1]); } } |
Veröffentlicht am 30. April 2015 von admin in Java, Programmierung, projecteuler