#include <iostream>
using namespace std;
char szyfruj_znak(char znak, int klucz) {
int litera_alfabetu = int(znak) - 97;
int kod_nowej_litery = (litera_alfabetu + klucz) % 26;
return char (kod_nowej_litery + 97);
}
string szyfruj(string tekst, int klucz) {
string pom = "";
for (int i = 0; i < tekst.size(); i++) {
pom = pom + szyfruj_znak(tekst[i], klucz);
}
return pom;
}
string deszyfruj(string tekst, int klucz) {
return szyfruj(tekst, 26 + klucz % 26);
}
int main() {
cout << deszyfruj("xvrqlfcbgxnavr", 13) << endl;
cout << deszyfruj("wdmqh", 3) << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwpjaGFyIHN6eWZydWpfem5hayhjaGFyIHpuYWssIGludCBrbHVjeikgewoJaW50IGxpdGVyYV9hbGZhYmV0dSA9IGludCh6bmFrKSAtIDk3OyAKCWludCBrb2Rfbm93ZWpfbGl0ZXJ5ID0gKGxpdGVyYV9hbGZhYmV0dSArIGtsdWN6KSAlIDI2OyAKCXJldHVybiBjaGFyIChrb2Rfbm93ZWpfbGl0ZXJ5ICsgOTcpOyAKfSAKc3RyaW5nIHN6eWZydWooc3RyaW5nIHRla3N0LCBpbnQga2x1Y3opIHsKICAgICAgICBzdHJpbmcgcG9tID0gIiI7CiAgICAgICAgZm9yIChpbnQgaSA9IDA7IGkgPCB0ZWtzdC5zaXplKCk7IGkrKykgewogICAgICAgICAgICBwb20gPSBwb20gKyBzenlmcnVqX3puYWsodGVrc3RbaV0sIGtsdWN6KTsKfQogICAgICAgIHJldHVybiBwb207Cn0KCnN0cmluZyBkZXN6eWZydWooc3RyaW5nIHRla3N0LCBpbnQga2x1Y3opIHsKCXJldHVybiBzenlmcnVqKHRla3N0LCAyNiArIGtsdWN6ICUgMjYpOwp9CmludCBtYWluKCkgewoJY291dCA8PCBkZXN6eWZydWooInh2cnFsZmNiZ3huYXZyIiwgMTMpIDw8IGVuZGw7Cgljb3V0IDw8IGRlc3p5ZnJ1aigid2RtcWgiLCAzKSA8PCBlbmRsOwoJcmV0dXJuIDA7Cn0=