Historia Advent of Code 2020
Advent of Code 2020 opowiada historię wakacji na tropikalnej wyspie, które zostały odwołane i zamiast tego wybierasz się na wyspę, aby wysłać sobie prezenty świąteczne. Jednak podróż okazuje się być całą przygodą pełną wyzwań technicznych i logistycznych - od naprawy dokumentów do zmagania się z kryptografią na koniec!
Przebieg fabuły
Dzień 1-5: Przygotowanie do podróży[1]
Dostajesz pracę polegającą na naprawieniu raportu wydatków przed wyjazdem. Elfy z księgowości potrzebują, aby znaleźć dwie liczby, które sumują się do 2020 i pomnożyć je - to samo stare wyliczanie.
Podczas gdy przygotowujesz się do wyjazdu, musisz zweryfikować bazę haseł systemu wynajmu toboganów Bieguna Północnego. Okazuje się, że baza danych jest uszkodzona - niektóre hasła nie są zgodne z polityką korporacyjną.
Wyruszając na toboganach w dół do lotniska, wjeżdżasz między drzewa - musisz obliczyć, ile trafiów w drzewa przy danym nachyleniu.
Na lotnisku okazuje się, że zamiast paszportu masz Poświadczenia Bieguna Północnego! Trzeba przejść przez system skanerów automatycznych - musisz sprawdzić, które dokumenty mają wszystkie wymagane pola.
Wreszcie, odkrywasz, że upadłeś boarding pass na podłogę! Trzeba go odzyskać poprzez zdekodowanie numerów miejsc za pomocą binarnego podziału przestrzeni.
Dni 6-10: Loty i samoloty
Podczas wyczekiwania przed lotem trzeba wypełnić formularze celne z grupą ludzi - musisz zliczyć pytania, na które ktokolwiek odpowiedział "tak".
Samolot zawiera tajemniczy systemem reguł bagażu kolorów - każdy typ torby musi zawierać określone ilości innych kolorowych toreb. Musisz dowiedzieć się, które kolory toreb mogą ostatecznie zawierać twoją złotą torbę.
System startowy samolotu ma nieskończoną pętlę w kodzie startowym! Trzeba je naprawić poprzez znalezienie instrukcji, która przyczynia się do pętli.
Samolot ma problemy z zasilaniem - jego bateria jest rozładowana! Trzeba znaleźć prawidłowe połączenie adapterów napięcia.
Dni 11-15: Wyspa i prom
Docierasz do poczekalni promowej na wyspie. Elfy mówią o systemie zajęcia miejsc - ludzie siedzą zgodnie z prostymi regułami. Musisz zasymulować, gdzie wszyscy będą siedzieć.
Prom ma awarię nawigacji - instrukcje nawigacyjne są dziwne. Statek porusza się zgodnie z poleceniami kierunkowymi (N, S, E, W, L, R, F). Trzeba obliczyć odległość Manhattanu od punktu startowego.
W porcie morskim trzeba znaleźć autobus wahadłowy do lotniska - musisz znaleźć zaraz najpierw przyjeżdżający autobus.
Na statku system inicjalizacji portu ma dziwne problemy z bitmasks - trzeba emulować proces przypisywania wartości do pamięci.
Podczas oczekiwania na samolot, elfy grają w grę pamięci - każdy gracz wypowiada liczby na podstawie reguł. Musisz znaleźć 2020-tą liczbę wymawianą w grze.
Dni 16-20: Pociąg i kryptografia
Na pociągu pociągiem ekspresowym okazuje się, że bilet pociągu jest uszkodzony i nie możesz go przeczytać. Masz jednak liczby na bilecie i musisz zdekodować, co one oznaczają, używając reguł walidacji pól.
W kieszeni wymiarowej odkrywasz sześciany Conwaya - nieskończoną 3D siatkę kostek, które przechodzą cykl aktywacji. Musisz symulować sześć cykli.
Podczas podróży pociągiem dziecko potrzebuje pomocy w zadaniach domowych z matematyki - ale matematyka działa tu inaczej! Operatory mają tę samą precedencję i są oceniane od lewej do prawej.
Na dworcu rozpoznajesz osobę trzymającą obrazy satelitarne - jest to ogromny jigsaw puzzle z kafelkami o losowych orientacjach. Musisz zmontować kafelki z powrotem w pierwotny obraz, aby zobaczyć, co satelita nagrał.
Gdy jesteś już blisko domu, spotykasz małego kraba, który chce zagrać w grę w karty. Najpierw grają prostą grę Combat z talią kart.
Dni 21-25: Finał - wyspa i rezort
Po dotarciu do rezortu na tropikalnej wyspie okazuje się, że masz tylko N dni na zdobycie pięćdziesięciu gwiazd (monet lokalnej waluty) na depozyt hotelowy.
Podczas odpoczynku mały krab wyzwania cię do gry w kubki - musi on ustalić porządek kubków poprzez ich poruszanie w kole.
W łazience hotelowej okazuje się, że kod RFID na karcie pokojowej nie działa! Musisz reverse-engineer handshake kryptograficzny między kartą a drzwiami.
Po zdekodowaniu schematu kryptograficznego dowiadujesz się, że wymagana jest pętla transformacji powiązana z publicznym kluczem - musisz znaleźć tajną pętlę karty i drzwi, aby obliczyć klucz szyfrowania.
Po przełamaniu bezpieczeństwa i odblokowaniu drzwi wreszcie możesz sprawdzić się do pokoju i zacząć urlop!
Podsumowanie
Historia 2020 roku to opowieść o przygodzie mającej na celu dotarcie do tropikalnej wyspy na urlop, polegającej na odwołaniu i zamiast tego wysłaniu się samemu. Droga prowadzi przez problemy logistyczne (raporty wydatków, bazy haseł, bagaż), kłopoty z transportem (toboggany, samoloty, pociągi, promów, autobusów), niespodziewane wyzwania techniczne (kody, kryptografia, gry) i wreszcie ostateczne złamanie bezpieczeństwa karty RFID, aby móc sprawdzić się do pokoju hotelowego i wreszcie odpocząć!