Hier ist mal wieder eine neue Lösung auf projecteuler.net, dieses Mal für Problem 102.

Als erstes wurden 2 Methoden erstellt. Eine für die Flächenberechnung des Dreiecks (https://en.wikipedia.org/wiki/Triangle#Using_coordinates) und eine, die prüft, ob der Ursprung im Dreieck enthalten ist.

Danach wurde nur noch die Textdatei mit den zufällig generierten Werten eingelesen und entsprechend aufgesplittet sodass das Programm die Daten nutzen kann.

Die Berechnung ging ebenfalls wieder sehr schnell:

Result: 228

real 0m0.161s
user 0m0.231s
sys 0m0.022s

Hier der Code in Java:

Heute hatte ich mal wieder etwas Zeit ein weiteres Problem auf projecteuler.net zu lösen. Gelöst habe ich dieses Mal Problem 89 in der Programmiersprache Java.

Das Problem ist dank dieser Hilfe sehr einfach: https://projecteuler.net/about=roman_numerals

Man muss also nur „DCCCC“, „LXXXX“, „VIIII“, „CCCC“, „XXXX“ und „IIII“ ersetzen. Danach muss man nur noch die Differenz der Anzahl der Zeichen vor und nach dem Replacen herausfinden.

Das Programm von mir berechnet die Lösung sehr schnell:


Result: 743

real 0m0.163s
user 0m0.170s
sys 0m0.034s

Und so schaut der Code aus:

Ich hatte letztens das Problem, dass ich via Java mehrere POST-Parameter an einen Server senden musste. Dazu fand ich viele Lösungen im Netz, allerdings auch eine Menge, die nicht funktioniert haben. Daher poste ich mal hier meine Lösung, vielleicht kann sie ja mal jemand gebrauchen.

Hier ist die Klasse PostConnection:

Und so kann man die Klasse als Beispiel nutzen:

Dieses Wochenende habe ich mich mal wieder hingesetzt und eine weiteres Problem auf projecteuler.net gelöst.

Gelöst habe ich Problem 55 in der Programmiersprache C.

Kompiliert habe ich mit folgendem Befehl:

gcc -O3 -Wall Problem55.c -lm -o Problem55

Das Ergebnis berechnet sich sehr schnell:

Result: 249
real 0m0.019s
user 0m0.019s
sys 0m0.000s

So schaut der Quellcode des Programms aus:

Hier meine erste Python-Lösung auf projecteuler.net für das Problem 26.


Result: 983

real 0m0.246s
user 0m0.241s
sys 0m0.004s

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

Die Lösung zu Problem 11 habe ich ebenfalls in PHP umgesetzt.

Meiner Meinung nach war das Schwierigste an der Aufgabe sich in verschiedene Richtungen im Array zu bewegen. Wenn das klappt, berechnet sich die Lösung allerdings sehr schnell:


Result: 70600674

real 0m0.012s
user 0m0.008s
sys 0m0.004s

Hier meine Lösung zu Problem 36 auf projecteuler.net

Die Lösung für dieses Problem ließ sich extrem einfach in PHP bauen – und das Ganze läuft innerhalb von ~ 1 Sekunde:


872187
real 0m1.049s
user 0m1.048s
sys 0m0.000s

Hier meine Lösung zu Problem 96 auf projecteuler.net.

Für die Lösung des Problems habe ich das Perl-Module „Games::Sudoku::Solver“ benutzt, welches hier heruntergeladen werden kann.

Die schnellste Lösung ist es nicht, aber immerhin löst sie das Problem:


Result: 24702 !

real 0m9.220s
user 0m9.214s
sys 0m0.000s

So schaut die Lösung aus:

Die Lösung zu Problem 29 war extrem einfach.

Diese Lösung habe ich in der Skriptsprache Perl erstellt – die Rechengeschwindigkeit ist da allerdings etwas niedriger aber auch nicht schlecht:


real 0m1.817s
user 0m1.812s
sys 0m0.004s

Hier der Code:

Hier ist meine Lösung zu Problem 92 auf projecteuler.net. Die Lösung ist mittels der Programmiersprache C umgesetzt und kann mittels des gcc mit diesem Befehl kompiliert werden:


gcc -O3 -Wall Problem92.c -lm -o Problem92

Auf meinem Rechner braucht das Skript nur eine sehr kurze Zeit zum Berechnen:

real 0m0.639s
user 0m0.638s
sys 0m0.000s

Der Code schaut so aus: