Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige Überarbeitung Vorherige Überarbeitung | |||
faecher:informatik:oberstufe:java:aoc:aco2023:day20:start [24.12.2023 21:56] – Marco Kuemmel | faecher:informatik:oberstufe:java:aoc:aco2023:day20:start [24.12.2023 21:57] (aktuell) – [Lösungshinweise Teil 2] Marco Kuemmel | ||
---|---|---|---|
Zeile 299: | Zeile 299: | ||
===== Lösungshinweise Teil 2 ===== | ===== Lösungshinweise Teil 2 ===== | ||
- | * Für Teil 2 ist wichtig den folgenden Kniff zu sehen: Der Output ist low, wenn **alle** Eingänge der letzten Conjunction high sind. Dies passiert aber erst nach vielen Billionen (!) Iterationen. Daher muss man noch einen Schritt weiter denken: Schaue dir jeden Vorgänger der letzten Conjunction an und speichere dir, wann diese Module jeweils **einzeln** einen high-Pulse an die letzte Conjunction aussenden! Multipliziere am Ende alle diese minimalen Iterationen für die jeweiligen high-Pulses. | + | * Für Teil 2 ist es wichtig, den folgenden Kniff zu sehen: Der Output ist low, wenn **alle** Eingänge der letzten Conjunction high sind. Dies passiert aber erst nach vielen Billionen (!) Iterationen. Daher muss man noch einen Schritt weiter denken: Schaue dir jeden Vorgänger der letzten Conjunction an und speichere dir, wann diese Module jeweils **einzeln** einen high-Pulse an die letzte Conjunction aussenden! Multipliziere am Ende alle diese minimalen Iterationen für die jeweiligen high-Pulses. |
++++ Lösungsvorschlag Teil 2 | | ++++ Lösungsvorschlag Teil 2 | |