Detalii evaluare #35935926

Rezumat problemă

Se dau N cuvinte formate doar din primele K litere mici ale alfabetului englez și un șir xi de M numere naturale. Trebuie să se formeze M cuvinte astfel încât oricare cuvânt i (1 ≤ i ≤ M) să respecte
următoarele proprietăți:

  • Să aibă lungimea xi
  • Să fie format doar din primele K litere mici ale alfabetului englez
  • Să nu existe niciun cuvânt cuv din cele N date inițial sau din celelalte M - 1 nou formate astfel încât cuv să fie prefix al cuvântului i
  • Să nu existe niciun cuvânt cuv din cele N date inițial sau din celelalte M - 1 nou formate astfel încât cuvântul i să fie prefix al lui cuv

Să se calculeze numărul de moduri de a forma M cuvinte care respectă proprietățile de mai sus. Două moduri se consideră diferite dacă există cel puțin o poziție i pentru care al i-lea cuvânt diferă. Deoarece acest număr poate fi foarte mare, se va afișa doar restul său la împărțirea cu 1.000.000.007.

Detalii

Problema Cuvinte10 Operații I/O tastatură/ecran
Limita timp 0.5 secunde Limita memorie Total: 512 MB / Stivă 128 MB
Id soluție #35935926 Utilizator Popp Iancu (Iancu)
Fișier cuvinte10.cpp Dimensiune 2.64 KB
Data încărcării 28 Martie 2022, 20:59 Scor / rezultat 37 puncte

Evaluare


Mesaj compilare

cuvinte10.cpp: In function 'bool findStr(Trie*, const string&, int)':
cuvinte10.cpp:29:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   if (idx == s.size()) {

                     ^
cuvinte10.cpp: In function 'void addStr(Trie*, const string&, int)':
cuvinte10.cpp:40:21: warning: comparison between signed and unsigned integer expressions [-Wsign-compare]
   if (idx == s.size()) {

                     ^
cuvinte10.cpp: In function 'bool cmp(const string&, const string&)':
cuvinte10.cpp:16:1: warning: control reaches end of non-void function [-Wreturn-type]
 }

 ^

Rezultat evaluare

Test Timp Mesaj evaluare Scor posibil Scor obținut
1 0.012 secunde OK. 4 4
2 0.012 secunde OK. 4 4
3 0.012 secunde OK. 4 4
4 0 secunde Caught fatal signal 11 5 0
5 0 secunde Caught fatal signal 11 5 0
6 0.012 secunde OK. 5 5
7 0.064 secunde OK. 3 3
8 0.064 secunde OK. 4 4
9 0.08 secunde OK. 4 4
10 Depășit Limita de timp depășită 3 0
11 Depășit Limita de timp depășită 3 0
12 0 secunde Caught fatal signal 11 3 0
13 Depășit Limita de timp depășită 3 0
14 0.224 secunde OK. 2 2
15 Depășit Limita de timp depășită 2 0
16 0 secunde Caught fatal signal 11 2 0
17 Depășit Limita de timp depășită 2 0
18 Depășit Limita de timp depășită 3 0
19 Depășit Limita de timp depășită 3 0
20 Depășit Limita de timp depășită 4 0
21 0.004 secunde Caught fatal signal 11 3 0
22 0 secunde Caught fatal signal 11 3 0
23 Depășit Limita de timp depășită 3 0
24 0.288 secunde OK. 3 3
25 0.284 secunde OK. 4 4
26 Depășit Limita de timp depășită 4 0
27 Depășit Limita de timp depășită 4 0
28 Depășit Limita de timp depășită 4 0
29 Depășit Limita de timp depășită 4 0
Punctaj total 37

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 Cuvinte10 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ă.