#1198
Se consideră alfabetul englez compus din literele mici, de la a la z.
Se numeşte cuvânt un şir finit, eventual vid, de litere din acest alfabet.
Se numeşte expresie şablon un şir de caractere din alfabet în care pot apărea și caracterele ? şi *.
Un cuvânt se potrivește cu o expresie șablon dacă se poate obține din aceasta astfel:
? se înlocuiește cu o singură literă din alfabet;* se înlocuiește cu un cuvânt oarecare, eventual vid;? și *, un singur caracter de tip literă.Considerându-se o expresie șablon și un șir de cuvinte, să se determine, pentru fiecare cuvânt în parte, dacă se potrivește sau nu cu expresia şablon dată.
| Problema | Sablon1 | Operații I/O |
sablon1.in/sablon1.out
|
|---|---|---|---|
| Limita timp | 0.8 secunde | Limita memorie |
Total: 8 MB
/
Stivă 2 MB
|
| Id soluție | #64558708 | Utilizator | |
| Fișier | sablon1.cpp | Dimensiune | 4.80 KB |
| Data încărcării | 14 Mai 2026, 11:24 | Scor/rezultat | 48 puncte |
sablon1.cpp: In function ‘bool match_logic(int, int, const std::vector<char>&, const std::vector<Gap>&, const std::string&, std::vector<std::vector<int> >&)’: sablon1.cpp:18:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::vector<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 18 | if (l_idx == letters.size()) { | ~~~~~~^~~~~~~~~~~~~~~~~ sablon1.cpp:26:15: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 26 | if (s_idx >= S.length()) return false; | ~~~~~~^~~~~~~~~~~~~ sablon1.cpp:38:22: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 38 | if (start_search >= S.length()) return memo[l_idx][s_idx] = 0; | ~~~~~~~~~~~~~^~~~~~~~~~~~~ sablon1.cpp:38:63: warning: suggest parentheses around assignment used as truth value [-Wparentheses] 38 | if (start_search >= S.length()) return memo[l_idx][s_idx] = 0; sablon1.cpp:42:26: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 42 | if (start_search < S.length() && S[start_search] == letters[l_idx]) { | ~~~~~~~~~~~~~^~~~~~~~~~~~ sablon1.cpp:44:43: warning: suggest parentheses around assignment used as truth value [-Wparentheses] 44 | return memo[l_idx][s_idx] = 1; sablon1.cpp:49:38: warning: comparison of integer expressions of different signedness: ‘int’ and ‘std::__cxx11::basic_string<char>::size_type’ {aka ‘long unsigned int’} [-Wsign-compare] 49 | for (int i = start_search; i < S.length(); ++i) { | ~~^~~~~~~~~~~~ sablon1.cpp:52:47: warning: suggest parentheses around assignment used as truth value [-Wparentheses] 52 | return memo[l_idx][s_idx] = 1; sablon1.cpp:57:31: warning: suggest parentheses around assignment used as truth value [-Wparentheses] 57 | return memo[l_idx][s_idx] = 0;
| Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
|---|---|---|---|---|---|---|
| 0 | Depășit | Limita de timp depășită | 4 | 0 | ||
| 1 | Depășit | Limita de timp depășită | 4 | 0 | ||
| 2 | Depășit | Limita de timp depășită | 4 | 0 | ||
| 3 | Depășit | Limita de timp depășită | 4 | 0 | ||
| 4 | 0.001 secunde | OK. | 4 | 4 | ||
| 5 | 0.001 secunde | OK. | 4 | 4 | ||
| 6 | 0.001 secunde | OK. | 4 | 4 | ||
| 7 | 0.001 secunde | OK. | 4 | 4 | ||
| 8 | 0.003 secunde | OK. | 4 | 4 | ||
| 9 | 0.002 secunde | OK. | 4 | 4 | ||
| 10 | 0.002 secunde | OK. | 4 | 4 | ||
| 11 | 0.001 secunde | OK. | 4 | 4 | ||
| 12 | 0.001 secunde | OK. | 4 | 4 | ||
| 13 | 0.001 secunde | OK. | 4 | 4 | ||
| 14 | 0.003 secunde | OK. | 4 | 4 | ||
| 15 | 0.001 secunde | OK. | 4 | 4 | ||
| 16 | Depășit | Limita de timp depășită | 4 | 0 | ||
| 17 | Depășit | Limita de timp depășită | 4 | 0 | ||
| 18 | Depășit | Limita de timp depășită | 4 | 0 | ||
| 19 | Depășit | Limita de timp depășită | 4 | 0 | ||
| 20 | Depășit | Limita de timp depășită | 4 | 0 | ||
| 21 | Depășit | Limita de timp depășită | 4 | 0 | ||
| 22 | 0.008 secunde | Caught fatal signal 6 | 4 | 0 | ||
| 23 | Depășit | Limita de timp depășită | 4 | 0 | ||
| 24 | Depășit | Limita de timp depășită | 4 | 0 | ||
| Punctaj total | 48 | |||||
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Sablon1 face parte din prima categorie. Soluția propusă de tine va fi evaluată astfel:
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ă.