Przejdź do głównej zawartości

Tajemnicza runda - trailer

Tajemniczy szyfr

- Zdzisiek! Zdzisiek! Nie wchodź tam! - wołasz.
Zdzisiek, jak to on, wszedł jednak bez głębszej refleksji. Ciśnienie podniosło się Tobie momentalnie, bo nie było Ci to na rękę. No ale nie możesz Zdzicha zostawić samego. Idziesz za nim do tej opuszczonej rudery. Wygląda ona jakby miała się już rozpaść w zeszłym stuleciu. Starasz się stąpać ostrożnie by nie doprowadzić do tragedii. Zdzisiek jak w amoku, ze swoja latarką z breloczka od kluczy, lata w tę i z powrotem. Jakby się z kotem na rozumy pozamieniał.


- Zdzichu, motyla noga! Co ty wyprawiasz!? Ta ruina zaraz się rozpadnie!
Kolega jednak Cię nie słyszy lub nie rozumie. Ostatnio nie wiesz co dociera do jego szarych komórek. Odkąd nagrał i umieścił swój filmik na TwojejRurze.pl, w którym wykonał jakiś kaktus challenge, to nie jest już tym samym człowiekiem.
Patrzysz jak beztrosko wbiega po spróchniałych i nadpalonych schodach na piętro. Czekasz na tragedię, która jednak nie następuje.
- Idziesz czy nie? - woła Zdzisiek.
- Kurza melodia, idę! - odpowiadasz, bo nie wiesz czy nie zrobi sobie krzywdy.
- Patrz co znalazłem. - z powagą, jakby trzymał w ręku skarb, podał Ci kartkę. W koło było wiele śmieci (nie tylko papierowe czy szklane ale i organiczne) a smród szczurzego moczu był tak wyraźny, że aż łzawiły Ci oczy. W związku z tym nie zachwycał Cię pomysł trzymania w ręce kawałka papieru wyciągniętego z tej kolekcji.
- Trzymaj i patrz! To chyba coś starożytniego. - zauważył elokwentnie Twój kolega. Zdzichu miał wielkie oczy pełne nadziei, że potwierdzisz to co właśnie powiedział. Nie możesz mu powiedzieć, że ten poplamiony kawałek papieru to zwykły śmieć, bo to by było jak kopanie małego kotka, który wzrokiem błaga Cię o mleczko.
Przełamujesz swój opór i bierzesz kartkę. Uśmiechasz się, bo Zdzisiek miał trochę racji. Na kartce jest zapisany ciąg znaków oraz liczba całkowita. Wygląda to na szyfr monoalfabetyczny. Trochę przypomina to szyfr Cezara (stąd to „trochę racji”) tyle, że zawiera wielkie i małe litery oraz inne znaki takie jak cyfry, przecinki i kropki. Liczba pod ciągiem znaków to pewnie klucz. Rozglądasz się dookoła i widzisz więcej takich kartek. Zauważasz, że klucz może być dodatni lub ujemny. Wskazuje to, zapewne, kierunek zmiany danej litery.
Postanawiasz zabawić się z kolegą i również na Twojej twarzy zagościła powaga.
- Zdzichu, to mogą być notatki szpiegów. Ale trzeba uważać, bo jako ostatni z tego typu szyfru korzystali Rosyjscy żołnierze.
- Zbieramy te papiery i uciekamy! – zawołał bystry kolega i czmychnął.
Niech to dunder świśnie! Zdzisław zabrał swoją latarkę i z grację trzynożnego słonia zbiegł na parter.
Mimo, że po ciemku Twoje nogi i ręce trafiały na niezidentyfikowane artefakty, to jednak zadowolenie Cię nie opuszczało. Zdzisiu będzie miał kupę zabawy. Będzie rozszyfrowywał wiadomości, które już udało się tobie częściowo odczytać. To dzieciaki, Hermenegilda, Bohdan, Honorata i Tekla, które bawiły się w tej okolicy, upatrzyły sobie tę ruderę na tajną bazę. Karteczki to zapewne ich ćwiczenia szyfrowania tajemnych komunikatów w tajemniczym klubie.

Pomóż Zdzisławowi odszyfrować wiadomości. Użyj szyfru, w którym każda litera tekstu jawnego (niezaszyfrowanego) zastępowana jest oddaloną od niej o stałą liczbę pozycji (klucz) w alfabecie, literą, przy czym kierunek zamiany musi być zachowany i zdefiniowany jest on wartością klucza. Zaszyfrowaniu podlegają tylko wielkie i małe litery współczesnego podstawowego alfabetu łacińskiego. Wielkość liter jest rozróżnialna. Reszta znaków przepisywana jest bez zmian. W celu przekształcenia tekstu jawnego wykorzystaj dołączony do wiadomości klucz.




Wejście

Na wejściu otrzymujesz dwa wiersze. W pierwszym wierszu jest podany ciąg znaków o długości maksymalnie 10^6 elementów będący tekstem jawnym. W drugim wierszu jest podany klucz będący liczbą całkowitą z przedziału obustronnie domkniętego <-1000;1000>.

Wyjście

Jeden wiersz zawierający ciąg znaków będący szyfrogramem zakończony znakiem przejścia do nowej linii.

Przykłady

Wejście

To jest tajny tekst napisany w 2014 roku.
3

Wyjście

Wr mhvw wdmqb whnvw qdslvdqb z 2014 urnx.

Wejście

Wr mhvw wdmqb whnvw qdslvdqb z 2014 urnx.
-3

Wyjście


To jest tajny tekst napisany w 2014 roku.

Komentarze

Popularne posty z tego bloga

[C++]Konwersja systemu dziesiętnego na binarny [dec2bin, dec2u2]

Konwersja między systemami liczbowymi była już poruszana w tym serwisie tym razem zajmę się kodem U2. Inaczej zwany uzupełnieniem do 2. Opis tego systemu pojawił się w kontekście wstępu do programowania w języku Python [tutaj].

Prosty program tzw. szkolny zamiany nieujemnej liczby dziesiętnej na jej postać binarną:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18#include <iostream>usingnamespace std; intmain() { int liczba; cin >> liczba; string wynik; while(liczba){ wynik = (liczba%2?"1":"0") + wynik; liczba /=2; } cout << wynik; return0; }
Poniżej prezentuję kod programu, który zawiera trzy metody rozwiązania problemu jakim jest wyświetlenie użytkownikowi reprezentacji u2 podanej przez niego liczby dziesiętnej.

Pierwsza z nich wywodzi się z typowego algorytmu konwersji systemu dec do u2:
1. przedstaw bezwzględną wartość liczby dziesiętnej w postaci binarnej,
2. dodaj na początek tak powstałego ciągu zer i jedynek 0,
3. jeż…

Pierwiastek kwadratowy [m. Newtona-Raphsona]

Do wyznaczania pierwiastka kwadratowego liczby dodatniej można wykorzystać m.in. metodę Newtona-Raphsona. Zakłada ona, że postawiony problem jest identyczny z problemem, w którym należy szukać długości boku kwadratu o znanym polu powierzchni.

Python - lekcja 005

Spis treści
- zamiana całkowitych liczb dziesiętnych na ich odpowiedniki w innych systemach liczbowych (algorytm),
- ujemne liczby całkowite w systemie binarnym (ZM, U1, U2, algorytm, formatowanie stringów, rzutowanie ze zmianą systemu liczbowego) [dec2bin, dec2ZM, dec2U1, dec2U2]
- zadania.