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:aoc2021:day24:start [26.12.2021 15:29] – [Was passiert also?] sbel | faecher:informatik:oberstufe:java:aoc:aoc2021:day24:start [26.12.2021 18:50] (aktuell) – [Zusammenfassung] sbel | ||
---|---|---|---|
Zeile 59: | Zeile 59: | ||
('' | ('' | ||
< | < | ||
- | Ziffer(w) | + | Ziffer(w) |
- | Start | + | Start |
- | 1 | + | 3 |
- | 2 | + | 2 2+ADD_TO_Y |
- | 1 | + | 4 |
+ | .... | ||
</ | </ | ||
+ | |||
+ | === Variante B === | ||
+ | |||
+ | Wenn auf die obige Folge nun Variante B angewendet wird, erhält man in Zeile 4 den zuletzt abgelegten Wert im Register '' | ||
+ | |||
+ | < | ||
+ | z3 = (26*z2) + (4+ADD_TO_Y) % 26 -> (4+ADD_TO_Y) | ||
+ | </ | ||
+ | Außerdem wird z durch 26 dividiert, d.h. in '' | ||
+ | < | ||
+ | z4 = z3 % 26 -> (26*z2) | ||
+ | </ | ||
+ | |||
+ | In '' | ||
+ | |||
+ | Jetzt kommt es darauf an, ob die Bedingung | ||
+ | < | ||
+ | Vorige Ziffer + ADD_TO_Y - ADD_TO_X = aktuelle Ziffer | ||
+ | </ | ||
+ | |||
+ | erfüllt ist. Wenn ja, bleibt der Wert vom Stapel entfernt, wenn nein wird '' | ||
+ | |||
+ | (*) ist also die Bedingung, die erfüllt sein muss, damit der Stack kleiner wird. | ||
+ | |||
+ | ==== Zusammenfassung ==== | ||
+ | |||
+ | Im Puzzle-Input gibt es 7 Blöcke, die auf jeden Fall '' | ||
+ | |||
+ |