Programozó versenyek

DEIK Regionális Programozó Csapatverseny, középiskolai kategória, 2023. december 3.

2023. december 3. 10:00 – 2023. december 3. 15:30

Titkosírás kezdőknek

Az Informatikai Karon kimondottan fontosnak tartjuk az adatok védelmét, így saját kriptográfiai technikákat fejlesztünk, melyek felhasználásával az adataink titkosíthatóak. Azonban nem vagyunk biztosak abban, hogy az általunk használt technika kellően biztonságos, így nektek, mint feltörekvő hackereknek lesz a feladata, hogy megpróbáljátok feltörni az általunk kitalált kódot.
A dekódolás elve nagyon egyszerű: elsőként bemenetként megkapjuk a felhasználható ABC betűit szóközzel elválasztva, illetve a dekódolandó szöveget nemnegatív egész számként. Ezt követően a dekódolás folytonosan történik, azaz például ha a bemeneti ABC a w x y z betűkből áll, akkor w=0, x=1, y=2, z=3, majd ww=4, xw=5, yw=6, zw=7, wx=8, xx=9, yx=10, zx=11,...,zz=19, www=20, xww=21, yww=22, zww=23, wxw=24, xxw=25, yxw=26, zxw=27,...stb.

Input

A bemenet két sorból áll: az első sor az angol ABC kis- és nagybetűinek valamilyen, legfeljebb 10 hosszú részhalmaza. A betűk között pontosan egyetlen szóköz karakter szerepel. A betűk "számozása" balról jobbra történik folytonosan, 0-val kezdődően. Így a balszélső betű értéke 0, a mellette lévőé 1, stb. A második sor egy nemnegatív egész szám, mely a dekódolandó szöveg.

Output

A kimenet a megadott titkosított szöveg (számsorozat) dekódolt változata szövegként. Az egyes karakterek között ne szerepeljen semmilyen elválasztó.

Megkötések

  • az ABC-ben használt betűk száma legfeljebb 10. Ugyanaz a betű előfordulhat kis- és nagybetűként is
  • a titkosított szöveg nagysága belefér egy 32 bites unsigned int változóba

Példa

Debreceni Egyetem, Informatikai Kar, v. 2024.09.30.