Cerința
Se dau trei numere naturale n
, k
și p
și n
șiruri formate din litere mici ale alfabetului englez. Înlocuiți a k
-a literă din fiecare șir cu a p
-a literă din alfabet. Dacă șirul are mai puțin de k
litere se va scrie oglinditul lui.
Date de intrare
Pe prima linie a fișierului schimb.in
se află trei numere naturale n
, k
și p
. Pe următoarele n
linii se află n
șiruri.
Date de ieșire
În fișierul schimb.out
se vor scrie noile șiruri, fiecare pe un rând nou.
Restricții și precizări
1 ≤ n, k ≤ 10000
1 ≤ p ≤ 26
- șirurile au cel mult
500
de caractere
Exemplul 1
schimb.in
2 4 7 abcde efg
schimb.out
abcge gfe
Exemplul 2
schimb.in
3 2 3 wqysd s sj
schimb.out
wcysd s sc
Cum e corect?
cout < "As la info";
cout << "As la info";
cout >> "As la info";
Felicitări! Poți mai mult?
Avem sute de probleme pentru tine, fiecare cu explicații ușor de înțeles.
Greșit, dar nu-i bai!
Antrenează-te cu sutele de probleme pe care ți le-am pregătit. Îți explicăm fiecare problemă în parte.
Rezolvare
Iată rezolvarea de 100 de puncte pentru problema schimb:
#include <fstream>
#include <cstring>
using namespace std;
ifstream f("schimb.in");
ofstream g("schimb.out");
char s[2001];
int n, k, p, i, j;
int main()
{
f>>n>>k>>p;
for (i=1; i<=n; i++) {
f.get();
f.get(s,2001);
if (strlen(s)<k) {
for (j=strlen(s)-1; j>=0; j--) g<<s[j];
g<<'\n';
}
else {
s[k-1]=96+p;
g<<s<<'\n';
}
}
return 0;
}
Atenție
Enunțurile afișate pe această pagină aparțin exclusiv site-ului PbInfo. Astfel, pentru ștergerea conținutului, puteți să ne contactați la adresa .
Rezolvarea problemei #1580 schimb
Pe această pagină găsești rezolvarea de 100 de puncte pentru problema #1580 schimb de pe PbInfo.ro. Atenție: nu încurajăm copiatul codului! Totuși, credem cu tărie că analizarea unei soluții corecte este o metodă foarte ușoară de a învăța informatică, astfel că oferim sursele pentru peste 1500 de probleme de pe platforma PbInfo.ro.
Pentru rezolvări PbInfo de la peste 1500 de probleme, vă invităm să intrați pe site-ul nostru!