Tag 4 ist – verglichen mit den Tagen davor – wieder einfacher. Für gegebene Passwortregeln ist zu ermitteln, wie viele gültige Passwörter ein einem bestimmten Bereich existieren

Wie üblich kann mein Code dafür auf GitHub und GitLab gefunden werden.

— Day 4: Secure Container —

You arrive at the Venus fuel depot only to discover it’s protected by a password. The Elves had written the password on a sticky note, but someone threw it out.

However, they do remember a few key facts about the password:

– It is a six-digit number.
– The value is within the range given in your puzzle input.
– Two adjacent digits are the same (like 22 in 122345).
– Going from left to right, the digits never decrease; they only ever increase or stay the same (like 111123 or 135679).

Other than the range rule, the following are true:

– 111111 meets these criteria (double 11, never decreases).
– 223450 does not meet these criteria (decreasing pair of digits 50).
– 123789 does not meet these criteria (no double).

How many different passwords within the range given in your puzzle input meet these criteria?

Advent of Code 2019 – Tag 04 / Teil 1
Spoiler: Meine Lösungen für Tag 04 – Teil 1

Als erstes wurde eine Funktion geschrieben, die ermittelt, ob ein gegebenes Passwort den Passwort-Regeln entspricht. Dafür wurde einfach geprüft, ob die Zeichenkette 6 Zeichen lang ist, nur aufsteigende Zeichen besitzt und eine Wiederholung existiert:

Go

Danach wurde lediglich über eine Schleife gezählt, wie viele gültige Passwörter in einem Bereich existieren:

Go

— Part Two —

An Elf just remembered one more important detail: the two adjacent matching digits are not part of a larger group of matching digits.

Given this additional criterion, but still ignoring the range rule, the following are now true:

– 112233 meets these criteria because the digits never decrease and all repeated digits are exactly two digits long.
– 123444 no longer meets the criteria (the repeated 44 is part of a larger group of 444).
– 111122 meets the criteria (even though 1 is repeated more than twice, it still contains a double 22).

How many different passwords within the range given in your puzzle input meet all of the criteria?

Advent of Code 2019 – Tag 04 / Teil 2
Spoiler: Meine Lösungen für Tag 04 – Teil 2

Hierzu brauchen wir lediglich unsere Funktion anzupassen:

Go

Schreib einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert.