Der Tag 1 ist tatsächlich eine sehr leichte Aufgabe und damit ein perfekter Einstieg für jede/-n in den diesjährigen AoC! Lies dir zunächst die offizielle Aufgabenbeschreibung durch: 2024 - Day 1
Tipps zur Vorgehensweise folgen weiter unten - hier sind zunächst nur wichtige Java-Methoden aufgelistet. Dieser Tag ist so leicht, dass du das auch hinbekommen kannst, ohne viele Tipps zu lesen!
Wichtige Java-Methoden:
ArrayList<Integer> varName = new ArrayList();
Eine ArrayList eignet sich am besten, um eine variable Anzahl von Elementen zu speichern. Dies trifft generell immer auf alle AoC-Aufgaben zu (Arrays werden eher selten benötigt). Denke daran, dass du dazu auch ganz oben import java.util.ArrayList;
aufrufen musst.for (String line: inputLines) {…}
line.split("…")
bekommst du ein Array von Strings zurückgeliefert, dass den ursprünglichen String line
an denjenigen Stellen aufgeteilt hat, die im Anführungszeichen stehen. Das String-Element, an dem geteilt wird, verschwindet dabei! Nutze das, um jede Zeile in die linke und rechte Zahl zu splitten. An was für einem String-Element musst du die Trennung durchführen?Integer.parseInt(…)
kannst du einen String in einen Integer umwandeln. Damit kannst du pro Schleifendurchlauf folgenden Code verwenden, um an die linke Zahl zu gelangen: Integer.parseInt(line.split("…")[0])
(für die rechte Zahl musst du nur eine Kleinigkeit ändern).liste.add(…)
kannst du ein Element zu einer ArrayList namens liste
hinzufügen.Collections.sort(liste)
kannst du eine unsortierte liste
sortieren. Dazu musst du ganz oben import java.util.Collections;
aufrufen!Im Wesentlichen besteht die erste Teilaufgabe aus folgenden einzelnen Schritten: