Detalii evaluare #42680987

Rezumat problemă

Programatoarea Petra a început un curs de criptografie. Fiind un spirit creativ, Petra a creat deja o metodă elaborată de criptare a unei parole sub forma unei perechi (tabel de litere aparţinând mulţimii {‘a’...’z’}, dicţionar de cuvinte). Din păcate pentru Petra, metoda ei de criptare a parolei, poate fi decriptată de oricine astfel:

  • se iau tabelul de litere şi dicţionarul de cuvinte permise
  • se listează, sortează şi numără toate cuvintele care se găsesc în tabel. Un cuvânt \(c_1c_2…c_k\) care există în dicţionar există şi în tabel dacă fiecare literă \(c_i\) apare în tabel şi pentru i>1, \(c_i\) este vecină în tabel cu litera \(c_{i-1}\).
  • din lista sortata de T perechi (\(cuvânt_i\), \(a_i\)), unde \(cuvânt_i\) este un cuvânt iar \(a_i\) este numărul de apariţii în tabel, reconstituie litera \(p_i\) a parolei astfel: \(p_i =\) ‘a’ + ( \(a_i\) mod 26). Încercând să îmbunătăţească algoritmul, Petra a decis să înlocuiască unele litere din tabel cu semnul întrebării '?'. Un semn '?' poate fi înlocuit cu orice literă când se parcurge tabelul. Convinge-o pe Petra că, în ciuda îmbunătăţirii, îi poţi găsi parola pornind de la orice pereche de (dicţionar, tabel de litere) dată.

Detalii

Problema CuvinteAscunse Operații I/O cuvinteascunse.in/cuvinteascunse.out
Limita timp 0.3 secunde Limita memorie Total: 8 MB / Stivă 8 MB
Id soluție #42680987 Utilizator Rafiliu Florin (RafiliuFlorin)
Fișier cuvinteascunse.cpp Dimensiune 3.20 KB
Data încărcării 14 Martie 2023, 13:55 Scor / rezultat 0 puncte

Evaluare


Mesaj compilare

cuvinteascunse.cpp: In function 'void AddWord(std::string)':
cuvinteascunse.cpp:30:31: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
     for(int i = 0; i < s.size(); i++) {

                               ^
cuvinteascunse.cpp: In function 'int main()':
cuvinteascunse.cpp:112:35: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
         for(int j = 0; j < s.size(); j++)

                                   ^

Rezultat evaluare

Test Timp Mesaj evaluare Scor posibil Scor obținut
0 0 secunde Raspuns gresit. 10 0
1 0 secunde Raspuns gresit. 10 0
2 0.008 secunde Caught fatal signal 11 10 0
3 0.008 secunde Caught fatal signal 11 10 0
4 0.008 secunde Caught fatal signal 11 10 0
5 0.008 secunde Caught fatal signal 11 10 0
6 0.008 secunde Caught fatal signal 11 10 0
7 0.012 secunde Raspuns gresit. 10 0
8 0.004 secunde Raspuns gresit. 10 0
9 0.072 secunde Raspuns gresit. 10 0
Punctaj total 0

Cum funcționează evaluarea?

www.pbinfo.ro permite evaluarea a două tipuri de probleme:

  • probleme la care rezolvarea presupune scrierea unui program complet
  • probleme la care rezolvarea presupune scrierea unei secvențe de program - câteva instrucțiuni, o listă de declarații, una sau mai multe funcții, etc.

Problema CuvinteAscunse face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:

  • Programul sursă este compilat folosind compilatorul corespunzător. Dacă în urma compilării se obțin erori sau avertismente, acestea sunt afișate în această pagină.
  • Dacă programul a fost compilat, executabilul obținut va fi rulat, furnizându-i-se unul sau mai multe seturi de date de intrare, în concordanță cu restricțiile specifice problemei. Pentru fiecare set de date se obține un anumit punctaj, în raport cu corectitudinea soluției tale.

Suma punctajelor acordate pe testele utilizate pentru verificare este 100. Astfel, soluția ta poate obține cel mult 100 de puncte, caz în care se poate considera corectă.