#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",23)<< endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwpjaGFyIHN6eWZydWpfem5hayhjaGFyIHpuYWssIGludCBrbHVjeikgewoJaW50IGxpdGVyYV9hbGZhYmV0dSA9IGludCh6bmFrKSAtIDk3OyAKCWludCBrb2Rfbm93ZWpfbGl0ZXJ5ID0gKGxpdGVyYV9hbGZhYmV0dSArIGtsdWN6KSAlIDI2OyAKCXJldHVybiBjaGFyIChrb2Rfbm93ZWpfbGl0ZXJ5ICsgOTcpOyAKfSAKc3RyaW5nIHN6eWZydWooc3RyaW5nIHRla3N0LCBpbnQga2x1Y3opewogICAgICAgIHN0cmluZyBwb20gPSAiIjsKICAgICAgICBmb3IgKGludCBpID0gMDsgaSA8IHRla3N0LnNpemUoKTsgaSsrKSB7CiAgICAgICAgICAgIHBvbSA9IHBvbSArIHN6eWZydWpfem5hayh0ZWtzdFtpXSwga2x1Y3opOwp9CiAgICAgICAgcmV0dXJuIHBvbTsKfQoKc3RyaW5nIGRlc3p5ZnJ1aihzdHJpbmcgdGVrc3QsIGludCBrbHVjeikgewoJcmV0dXJuIHN6eWZydWoodGVrc3QsIDI2ICsga2x1Y3ogJSAyNik7Cn0KaW50IG1haW4oKSB7Cgljb3V0IDw8IGRlc3p5ZnJ1aigieHZycWxmY2JneG5hdnIiLCAxMykgPDwgZW5kbDsKCWNvdXQgPDwgZGVzenlmcnVqKCJ3ZG1xaCIsMjMpPDwgZW5kbDsKCXJldHVybiAwOwp9