Zum Inhalt springen →

Massimo Castell Beiträge

Advent of Code 2021 – Tag 7

Heute bin ich spät dran mit dem Bloggen. Das Rätsel habe ich wie gestern am Morgen erledigt. Ich bin selbst erstaunt wie es diese Jahr läuft und das ich die kurze Zeit morgens finde mich diesem Spaß zu widmen. Auch wenn ich am Anfang geschrieben habe, dass ich nicht regelmäßig teilnehmen kann. So ergeht es ja vielen. Wenn man die Statistiken anschaut, dann sind Goldstern Teilnehmer von 156.597 an Tag 1 auf 51.525 gefallen.
Das heutige Rätsel war einfacher, auch das kann man gut sehen. Ich habe meine erste Lösung nach 1:52 Stunden eingereicht und bin auf Platz 16539 gelandet. An Tag 5 war ich mit 3:12 Stunden auf Platz 13696. Und auch bei Teil 2. Heute 2:39 für Platz 18317 am Tag 5 4:18 für Platz 14409.
Trotzdem hat das Rätsel viel Spaß gemacht. Und auch wenn es eine echte Mathematische Funktion zur Lösung gibt (Weiszfeld Algorithmus), ich habe mal wieder in Python meine Listen prozessiert. Deswegen hat Teil 2 auch ein wenig gedauert, aber nicht ewig. Ich finde das Bild hier echt passend.

Link zum Tagesrätsel
Mein Leaderboard ist hier Join-Code: 1204843-3e53d471
Meine Lösungen auf Github

Schreibe einen Kommentar

Advent of Code 2021 – Tag 6

Nikolausi! Nein Osterhasi! Ok, der alte Gerhard Polt Sketch (wie es damals noch hieß) passt eher zu dem anderen Fest, aber man kann eh nicht davon genug bekommen. Ich schweife ab, also nochmal.

Zum Nikolausi bekommt man ja eigentlich etwas. Bei mir war es Ärger und Stress und ich hatte es eigentlich schon abgeschrieben einen Post zu schreiben. Das Rätsel hatte ich schon vor der Morgengassirunde gelöst und hatte eigentlich einen super Start in den Tag.
Und während meine Frau gerade bei „Wer wird Millionär“ mit rätselt, nutze ich die Zeit und schreiben doch diesen Post.

Das heutige AoC Rätsel ist wieder ein Memoryfresser. Ein typisches Rätsel, dass im Teil 1 einfach zu lösen ist, meistens durch eine Schleife und anwachsende Liste. Aber in Teil 2 werden die Parameter so erhöht, dass jeder normale PC die Flügel von sich streckt. Und ja, beim Hinweis „maybe exponentially quickly?“ hätten die Alarmglöcken läuten müssen. Und so ist meine Aussage von gerade das ich das Rätsel „vor“ der Morgengassirunde gelöst habe, nicht ganz richtig. Denn Teil 1 schon, und in der halben Stunde, in der ich unterwegs war, hat mein Laptop alles gegeben auch Teil 2 zu lösen, jedoch ohne Erfolg. Aber so eine Gassirunde ist das Beste um neue Gedanken zu fassen. Und so war es schnell umgeschrieben um zur Lösung zu kommen. Das habe ich auch dem AoC Training vom letzten Jahr zu verdanken.

Und warum erinnert mich dieses Laternenfische Wachstum nur an die Corona Situation aktuell? Und warum fallen wir immer auf exponentielle Funktionen rein?

Link zum Tagesrätsel
Mein Leaderboard ist hier Join-Code: 1204843-3e53d471
Meine Lösungen auf Github

Schreibe einen Kommentar

Advent of Code 2021 – Tag 5

Sonntag. Da hat man in der Regel ein wenig mehr Zeit und mich hat es früh aus dem Bett geholt. Also konnte ich, solange noch alle schlafen, schön mit dem Tagesrätsel anfangen. Koordinatensystem und Lienen auf diesem. Eine sehr nette Aufgabe. Die Lösung ist mir auch nicht allzu schwer gefallen. Tricky dabei war, dass Anfang und Ende der Linien in alle Richtungen möglich war. Interessant auch zu sehen wir ein Competitive Programmer auf den gleichen Fehler reingefallen ist und für die Lösungsfindung ähnlich lange gebraucht hat. Wobei das wohl das Einzige ist, bei dem wir die gleiche Geschwindigkeit haben. Interessant ist auch seine kleine Batchdatei mit der er das Inputfile automatisch downloaded.
Teil 2 mit Diagonalen Linien war ne Idee kniffliger. Wobei es viel hilft, dass es nur 45° Diagonalen sind. Ich habe jedoch in der Schnelligkeit den Code dupliziert anstatt mit einem Schalten zu arbeiten. Vielleicht mache ich es die Tage noch sauber.

Eine Sache wollte ich euch noch zeigen. Während ich die Rätsel nur löse, gibt es viele, die sich noch den Spaß machen diese zu visualisieren. Der Subreddit zum Advent of Code ist immer einen Besuch wert. Ich hänge mal ans Ende ein paar davon an.

Link zum Tagesrätsel
Mein Leaderboard ist hier Join-Code: 1204843-3e53d471
Meine Lösungen auf Github

Tag 3

Tag 4

Tag 5

Schreibe einen Kommentar

Advent of Code 2021 – Tag 4

Was für ein Rätsel. Es geht um Bingo. Teil 1 hat mich gefordert, jedoch habe ich eine Lösung gefunden. Aber Teil 2 hat mich zur Verzweiflung gebracht. Sogar bei meiner Mittags- und Abendgassirunde habe ich kein Podcast gehört weil sich meine Gedanken nur um das Rätsel gedreht haben. Ich habe den Code mehrfach umstrukturiert und Zwischenlisten erstellt. Ich habe mit Markern gearbeitet und auch knallhart Listen (eine Liste entspricht einer Bingokarte) gelöscht. Alles hat nicht funktioniert. Ein Problem ist, dass das Rätsel manuell zu checken schlichtweg nicht möglich ist. Oder besser gesagt, ich wollte mir die Arbeit nicht machen.

Und dann ist es mir aufgefallen. Nach zig Print Befehlen zum debuggen habe ich gesehen, dass ich nur 4 Spalten der Bingokarten checke. Das hatte in Teil 1 keine Relevanz, denn da ist eine Reihe auf der Gewinnerkarte auch mit nur 4 Zahlen für die Lösung verantwortlich. Und im Testdatensatz ist es die 3. Spalte, also auch irrelevant. Da muss ich immer daran denken wie Developer sich über Tester amüsieren weil sie „unrealistische“ Situationen testen.

Über meine Lösung bin ich mal wieder zufrieden. Ich habe einen netten Kniff gefunden anstatt die Listen ständig miteinander zu vergleichen. Keine Spoiler hier im Beitrag.

Und die Statistik? Na wie es aussieht habe nicht nur ich Schwierigkeiten.
Gestern haben 76.712 beide Rätsel gelöst, heute „nur“ 38.389. Und auch diejenigen die nur Teil 1 gemacht haben sind von 23.652 auf 3.857 gefallen.
Und ich? Tja, Teil 1 habe ich nach knapp über 6 Stunden eingereicht. Lösung für Teil zwei erst nach fast 14 Stunden. Und nein, dazwischen habe ich auch andere Dinge gemacht. Wie z.B. Boostern.

Part 1 Part 2
Day Time Rank Score Day Time Rank Score
4 06:19:55 22101 0 2 13:44:44 36289 0

Link zum Tagesrätsel
Mein Leaderboard ist hier Join-Code: 1204843-3e53d471
Meine Lösungen auf Github

Schreibe einen Kommentar

Advent of Code 2021 – Tag 3

Heute wurde das Rätsel angezogen. Mal wieder ging es in die Welt der Binären Zahlen. Ich kann mich noch gut an letztes Jahr erinnern. Als ich Monate später ein Video mit der Kotlin Lösung angeschaut habe, wurde mir gezeigt, wie man mit den Binärwerten einfach rechnen kann. Und ich habe heute das Gefühl, dass es auch der Fall ist und ich sehe es nicht. Deswegen ist meine Lösung wieder mit Schleifen und IF Abfragen und einer der Stärken von Python List Comprehension. Ich bin trotzdem ganz glücklich mit der Lösung.

Es gibt auch einen Seite die es sich zu besuchen lohnt. Ich habe gestern erwähnt, dass die Beteiligung nachlässt. Hier kann man schön sehen wie der aktuelle Stand ist.

https://adventofcode.com/2021/stats

Bei mir sieht es auch besser aus. Bin wieder um die 12 Stunden zu spät trotzdem bei Teil 2 schon unter 50.000 Teilnehmer. Kann aber auch daran liegen, dass es Teil 2 auch inne hat.

Part 1 Part 2
Day Time Rank Score Day Time Rank Score
3 11:21:19 67434 0 2 12:07:23 47017 0

Link zum Tagesrätsel
Mein Leaderboard ist hier Join-Code: 1204843-3e53d471
Meine Lösungen auf Github

Schreibe einen Kommentar

Advent of Code 2021 – Tag 2

Siehe da, ich habe doch noch ein wenig Zeit gefunden heute, am entsprechenden Tag, die Aufgabe zu lösen. Wobei die ersten Tage ja immer recht einfach sind. Tag 1 war nur ein Addieren. Das Index verschieben von Teil 2 ist mit Python kein Hexenwerk.

Tag 2 ist an sich genau das Selbe mit dem Unterschied, dass man jetzt String und Integer verarbeiten muss. Aber auch hier nur Iterieren und per IF addieren oder subtrahieren.

Interessant ist, dass ich gestern beim Einreichen zeitlich später dran war aber eine höhere Platzierung erreicht habe. Das ändert sich meistens gegen Ende.

Part 1 Part 2
Day Time Rank Score Day Time Rank Score
2 11:29:36 73169 0 2 12:01:02 70963 0
1 13:01:15 72242 0 1 13:17:29 63377 0

Link zum Tagesrätsel
Mein Leaderboard ist hier Join-Code: 1204843-3e53d471
Meine Lösungen auf Github

Ein Kommentar

Advent of Code 2021 – Tag 1

Erster Dezember, es geht wieder los. Heute öffne ich nicht nur täglich ein Türchen im Adventskalender sondern auch immer ein Rätsel im Advent of Code. Letztes Jahr bin ich das erste Mal auf diese Webseite gestoßen.

https://adventofcode.com/

Erik Wastl betribt seit Jahre diese kleine Challenge bei der man jeden Tag im Dezember ein kleines Rätsel bekommt, dass man mit einem kleinen Programm in der Programmiersprache seiner Wahl lösen kann. Ich habe es das letzte Jahr mit Python und dieses Jahr werde ich es auch wieder damit lösen. Eigentlich wollte ich meine Rust und Kotlin Kenntnisse damit erweitern, jedoch waren die letzten Monate so unentspannt, dass ich bei beiden Sprachen nicht flüssig genug bin.

Meine Lösungen lade ich wie beim letzten Mal auf Github. Da findet ihr auch meine Lösungen des letzten Jahr.

https://github.com/MassimoCastell/AdventofCode

Und wer sich berufen fühlt mitzumachen kann auch gerne meinem privaten Leaderboard beitreten. Und nein, ich bin nicht so ein Mensch der die Nacht durchmacht um sofort das Rätsel zu lösen.

Join-Code: 1204843-3e53d471

https://adventofcode.com/2021/leaderboard/private/view/1204843

Schreibe einen Kommentar

Porrada Geek #114

Nachdem ich am Montag eine ganztägige Schulung hatte, war ich mental so kaputt, dass ich keine Lust hatte ins Training zu gehen. Das ist ein wenig der Nachteil an BJJ, wenn man mit dem Kopf nicht dabei ist, dann ist das Training sinnlos. Ist ja schließlich nicht nur Sparring bei dem man den Kopf freibekommt.

Das Dojo war extrem voll. Hätte nicht gedacht, dass an einem Mittwochabend noch so viele Zeit haben. Es macht mich sehr froh, dass so viele Menschen für den Sport begeistert sind. Auch wenn ein kleiner fieser Gedanke wegen der aktuellen Corona Situation im Hinterkopf rumschwirrt.

Das aktuelle Thema ist North-South-Transition meine „Lieblingsbewegung“. Aber wenigstens wieder ein paar Tipps wie man damit umgeht und sich auch darauf befreien kann. Der Drill und die Übungen haben mit natürlich heute einen fetten Muskelkater in den Armen, Schultern und sogar in den Brustmuskeln beschert. Das hatte ich schon sehr sehr lange nicht mehr. Ist irgendwie auch ein gutes Gefühl. Und so gut wie die Übungen und der Drill lief, dass Sparring war mehr als interessant.

Zu Gast waren eine Purpelbelt und ein Brownbelt, und ich hatte das Vergnügen bei dem Sparring zwei Mal gegen die Purpelbelt und einmal gegen den Brownbelt anzutreten. Gegen Sie habe ich ein paar Dinge testen können und habe ein paar Kleinigkeiten gelernt. Er hat mich aber fest an den Boden genagelt, da gab es kein Entkommen. Ich habe auch versucht meine „gelernte“ Technik anzuwenden, aber das war kaum möglich. Auch wenn er mit danach den Tipp gegeben hat, dass ich die Technik anwenden soll. Ich finde es immer wieder erstaunlich wie schwer mir die Transition der Bewegungen von der Übung in den „richtigen“ Kampf fällt. Oh ja, und mein Kampfgeist ist wieder auf einem sehr niedrigen Niveau. Der hat wohl auch unter Corona gelitten.

Oss!

Schreibe einen Kommentar

Porrada Geek #113

Oh hauerha! Da schaut man mal nicht hin, hat ein wenig Stress im Geschäft, fängt sich nebenbei eine Nackenzerrung ein und zack ist ein Monat um in dem man nicht im Training war. Hättest du mich gefragt wie lange die Pause war bevor ich meinen Blog geöffnet habe, hätte ich 2 Wochen gesagt. Wo ist den bitte die Zeit hin?

Das erklärt natürlich jetzt auch warum die gestrige Einheit so verflucht anstrengend war. So richtig was dazu schreiben mag ich auch nicht, denn am liebsten möchte ich sie sogar vergessen. Die Übungen haben recht gut geklappt und ich war auch erstaunt, wie leicht ich meinen 110kg Trainingspartner rumwuchten konnte. Aber ansonsten war ich nur am Limit und beim Sparring mit dem Professor musste ich sogar tappen, weil ich einfach keine Luft mehr bekommen habe. Und nein, ich war in keinem Choke, er „lag einfach nur“ auf meinem Solarplexus.

Ich hake das Training jetzt einfach mal ab.

Oss!

Schreibe einen Kommentar

Porrada Geek #112

Heute bin ich etwas später dran als sonst. Gestern nach dem Training wurde es spät und heute war ein geschäftiger Tag. Also kommt dieser Bericht einfach ein paar Stunden später.

Voll war es viele neue Gesichter. Es ist eine Freude zu sehen wie die Schule wächst. Ich kann es euch nur an Herz legen. Kommt vorbei und versucht es. Dieser Sport hat echt viel in mir verändert und erst recht meinem Rücken geht es viel besser auch wenn viele Menschen das Gegenteil vermuten würden.

Und so kam es, dass ich die Drills mit einem für mich Neuen durchgeführt habe. Jedoch hat er schon einen Stripe am Gürtel, das bedeutet, dass er nicht ganz so neu ist. Ich bin wohl viel zu selten im Training. Guard Pass Drills. Wie immer anstrengend, denn es geht um schnelle Wechsel hoch und runter und immer in der Malasana Position.

Die Übung war dann auch der Guard Pass, Gegner aufladen, Warriors Walk, Block mit dem Papercut Choke und ab in die Side Control. Hört sich aber komplexer an als es wirklich war. OK OK, wie immer liegt der Teufel im Detail, jedoch habe ich schon mit größeren Fragezeichen bei scheinbar einfacheren Abläufen.

Das Sparring war nach dem System 5 Stationen, Verlierer geht, 15 Minuten. Und was soll ich sagen, es war wieder sehr gut. Ich finde es super interessant wie unterschiedlich auch die für mich Neuen geschlagen haben. Ich konnte mal langsame Runden und mal harte Runden machen. An manchen Stellen bräuchte ich doch noch ein wenig mehr Kampfgeist, aber ich war auch sicherlich mit Abstand der Älteste, und so bin ich doch zufrieden auch wenn ich an manchen Runden deswegen verloren habe.

Oss!

Schreibe einen Kommentar