Dešifravimas | 프로그래밍의 벗 PivotOJ
PivotOJ

Dešifravimas

시간 제한: 1000ms메모리 제한: 1024MB출처: LMIO 2018-2019BOJ 30065
이 문제는 본문 이미지 일부가 표시되지 않습니다. 텍스트만으로 풀이가 어려울 수 있습니다.

문제

Informatikas Bitukas turi smalsių draugų, todėl su užjūrio draugu Brituku susirašinėja šifruodamas savo žinutes. Tam jis naudoja Cezario šifrą, kurį nors ir nėra sunku nulaužti, tačiau smalsiems draugams užšifruotos žinutės atrodo kaip atsitiktinė simbolių seka.

Cezario šifras veikia taip: susirašinėjimo dalyviai apsikeičia raktu KK (1 ≤ K ≤ 25), tuomet kiekviena raidė yra pakeičiama į jos KK-tąją kaimynę pagal lotyniškąją abėcėlę. Likę simboliai paliekami tokie patys. Abėcėlė apsisuka: Z pirmoji kaimynė yra A, o z pirmoji kaimynė — a.

Pasižiūrėkime, kaip Bitukas užšifruotų žinutę Kaip_gyveni? su raktu K=7K = 7:

[이미지 1]

Norėdamas žinutes šifruoti greičiau, Bitukas sukonstravo Bituko Šifravimo Mašiną (BŠM). Bitukas į BŠM įveda pradinę žinutę, tuomet paleidžia mašiną ir ši pradeda šifruoti žinutę po vieną simbolį nuo pradžios iki galo.

Vieną vakarą Bitukas šifravo labai ilgą laišką Britukui, mat norėjo papasakoti apie savo studijas. Tačiau, BŠM netikėtai užstrigo ir užšifravo tik dalį žinutės. Bitukas nepasimetė: paleido mašiną iš naujo ir šį kartą mašina žinutę užšifravo sėkmingai! Tik neapsižiūrėjęs jis išsiuntė Britukui abi žinutes...

Britukui tą vakarą irgi nesisekė: jis pamiršo abiejų sutartą raktą.

Jūsų užduotis – parašyti programą, kuri perskaičiusi abi Brituko gautas žinutes iššifruotų Bituko siųstą žinutę.

입력

Pirmoje eilutėje įrašytas vienas sveikasis skaičius — žinutės ilgis MM.

Antroje eilutėje įrašyta Brituko gauta žinutė, užšifruota su užstringančia mašina. Trečioje eilutėje — žinutė, užšifruota su veikiančia mašina.

Žinutėse tarpo simbolių nebus.

출력

Išveskite vieną eilutę — iššifruotą Bituko siunčiamą žinutę.

예제

예제 1

입력
12
Rhpw_nfceni?
Rhpw_nfclup?
출력
Kaip_gyveni?

예제 2

입력
5
Ocpo!
Ocpq!
출력
Mano!
코드를 제출하려면 로그인하세요.