Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung Nächste Überarbeitung | Vorherige Überarbeitung | ||
faecher:informatik:oberstufe:java:aoc:aoc2024:day10:start [04.01.2025 15:14] – [Teil 1] Marco Kuemmel | faecher:informatik:oberstufe:java:aoc:aoc2024:day10:start [04.01.2025 15:16] (aktuell) – [Teil 1] Marco Kuemmel | ||
---|---|---|---|
Zeile 10: | Zeile 10: | ||
* Speichere den Input in einem zweidimensionalen int-Array. Jeden '' | * Speichere den Input in einem zweidimensionalen int-Array. Jeden '' | ||
* Iteriere anschließend über jede Koordinate des Arrays. Wenn eine Koordinate 0 ist (= Startpunkt eines Trails), dann passieren zwei Dinge: | * Iteriere anschließend über jede Koordinate des Arrays. Wenn eine Koordinate 0 ist (= Startpunkt eines Trails), dann passieren zwei Dinge: | ||
- | - Speichere in einer ArrayList< | + | - Speichere in einer '' |
- Anschließend startest du den rekursiven Aufruf. | - Anschließend startest du den rekursiven Aufruf. | ||
* Der rekursive Aufruf benötigt folgende Parameter: | * Der rekursive Aufruf benötigt folgende Parameter: | ||
Zeile 115: | Zeile 115: | ||
Für den Teil 2 muss nur eine **winzige Kleinigkeit** angepasst werden. | Für den Teil 2 muss nur eine **winzige Kleinigkeit** angepasst werden. | ||
- | In Teil 1 geht es darum, pro Startpunkt zu zählen, wie viele Trail-Enden man erreichen kann. Jedes Trail-Ende darf also nur einmal erreicht werden. Daher mussten wir da auch markieren, falls wir ein Ende erreicht hatten. | + | In Teil 1 geht es darum, pro Startpunkt zu zählen, wie viele Trail-Enden man erreichen kann. Jedes Trail-Ende darf also nur einmal erreicht werden. Daher mussten wir uns auch merken, ob wir ein Ende bereits |
In Teil 2 geht es darum, pro Startpunkt zu zählen, wie **oft** ein Trail-Ende erreicht werden kann. Jedes Trail-Ende darf also von " | In Teil 2 geht es darum, pro Startpunkt zu zählen, wie **oft** ein Trail-Ende erreicht werden kann. Jedes Trail-Ende darf also von " | ||
* Es muss daher nun **kein** Trail-Ende mehr als " | * Es muss daher nun **kein** Trail-Ende mehr als " | ||
- | * Da nichts mehr markiert bzw. am Array " | + | * Ebenso benötigt man also die '' |
Achte bei den Aufrufen der rekursiven Methoden darauf, dass du überall die korrekten, neuen Methoden für Teil 2 aufrufst. | Achte bei den Aufrufen der rekursiven Methoden darauf, dass du überall die korrekten, neuen Methoden für Teil 2 aufrufst. | ||