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 1Part 2DayTimeRankScoreDayTimeRankScore406:19:55221010213:44:44362890Link zum Tagesrätsel Mein Leaderboard ist hier Join-Code: 1204843-3e53d471 Meine Lösungen auf Github