Գաղտնագիր

Գաղտնագրման այս եղանակն առաջին անգամ նկարագրել է իտալացի մաթեմատիկոս Ջիրոլամո Կարդանոն XVI դարում։
Տեքստը գրում ենք n×n չափի վանդակավոր այղուսակում ձախից աջ և վերևից ներքև կարգով՝ յուրաքանչյուր վանդակում մեկ տառ։
R
U
N
N
A
Z
A
R
I
S
C
O
Այնուհետև պատրաստում ենք աղյուսակի չափով ստվարաթուղթ, որի որոշ տեղերում անցքեր ենք անում։ Յուրաքանչյուր անցք պետք է ճիշտ մեկ վանդակի չափով արվի։ Անցքերի քանակը պետք է հավասար լինի աղյուսակի վանդակների քանակի մեկ քառորդին։
⬛️
⬛️
⬛️
⬛️
⬛️
⬛️
⬛️
⬛️
⬛️
⬛️
⬛️
⬛️
Տեղադրում ենք ստվարաթուղթը աղյուսակի վրա։ Երևացող տառերը ձախից աջ և վերևից ներքև կարգով դուրս ենք գրում երկրորդ աղյուսակում։ Ապա ստվարաթուղթը պտտեցնում ենք 90 աստիճանով և կրկին դուրս գրում երևացող տառերը և շարունակում դասավորել երկրորդ աղյուսակում։ Նույնը կրկնում ենք ևս երկու անգամ և երկրորդ աղյուսակում ստանում ենք գաղտնագրված տեքստը։
notion image
notion image
Պարզ է, որ ճիշտ գաղտնագրված տեքստ ստանալու համար, ստվարաթղթում արված և անցքերը պետք է այնպես արված լինեն, որ յուրաքանչյուր տառ ճիշտ մեկ անգամ բացվի։
Նույն ստվարաթուղթը հանդիսանում է գաղտնագրի բանալին։ Նրա միջոցով կարելի է վերծանել գաղտնագրված տեքստը։
Պահանջվում է գրել ծրագիր, որը տրված բանալու միջոցով վերծանում է տրված գաղտնագրված տեքստը։

Մուտքային տվյալներ

Առաջին տողում տրված է ստվարաթղթե բանալու n չափը: Հաջորդ n տողերը նկարագրում են ստվարաթղթե բանալին։ Դրանցից յուրաքանչյուրը պարունակում է n սիմվոլ։ Փակ վանդակները նշանակված են X սիմվոլով, բացերը՝ .-ով։ Հաջորդ տողը պարունակում է գաղտնագրված տեքստը, որը բաղկացած է ճիշտ n2 սիմվոլներից։

Ելքային տվյալներ

Պետք է արտածել մեկ տող՝ վերծանված տեքստը։

Օրինակ

Մուտք.
4
X.XX
.XXX
X.XX
XXX.
UASGNZRMRAONNICIetc.

Ելք.
RUNNAZARISCOMING
Աղբյուրը. Մարզային 2018

Constraints

Time limit: 2 seconds

Memory limit: 512 MB

Output limit: 1 MB

To check your solution you need to sign in
Sign in to continue