#3395
Se dau două numere N și T urmate de un șir de caractere S de lungime N. Se dau apoi T operații de trei tipuri:
1. Se adaugă un caracter la sfârșitul șirului S;
2. Se adaugă șirul S în mulțimea M doar dacă acesta nu există deja în mulțime;
3. Se cere numărul de șiruri din mulțimea M care sunt sufixe ale șirului S;
Afișați răspunsul tuturor operațiilor de tip 3.
Info-Oltenia 2020, Clasele XI-XII
| Problema | sufixe | Operații I/O |
sufixe.in/sufixe.out
|
|---|---|---|---|
| Limita timp | 1.2 secunde | Limita memorie |
Total: 32 MB
/
Stivă 2 MB
|
| Id soluție | #58167409 | Utilizator | |
| Fișier | sufixe.cpp | Dimensiune | 1.29 KB |
| Data încărcării | 18 Mai 2025, 08:34 | Scor/rezultat | 100 puncte |
sufixe.cpp: In function 'void read_ops(int&, char*, int&)': sufixe.cpp:10:29: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d %d\n", &N, &T); ^ sufixe.cpp:11:21: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%s\n", s); ^ sufixe.cpp:14:32: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf("%d", opType + i); ^ sufixe.cpp:17:36: warning: ignoring return value of 'int scanf(const char*, ...)', declared with attribute warn_unused_result [-Wunused-result] scanf(" %c\n", &s[N++]); ^ sufixe.cpp: In function 'int main()': sufixe.cpp:62:37: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("sufixe.in", "r", stdin); ^ sufixe.cpp:63:39: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("sufixe.out", "w", stdout); ^
| Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
|---|---|---|---|---|---|---|
| 0 | 0 secunde | OK. | 2 | 2 | ||
| 1 | 0 secunde | OK. | 2 | 2 | ||
| 2 | 0 secunde | OK. | 2 | 2 | ||
| 3 | 0.008 secunde | OK. | 2 | 2 | ||
| 4 | 0.032 secunde | OK. | 3 | 3 | ||
| 5 | 0 secunde | OK. | 3 | 3 | ||
| 6 | 0 secunde | OK. | 3 | 3 | ||
| 7 | 0.008 secunde | OK. | 3 | 3 | ||
| 8 | 0.08 secunde | OK. | 5 | 5 | ||
| 9 | 0.008 secunde | OK. | 5 | 5 | ||
| 10 | 0.02 secunde | OK. | 5 | 5 | ||
| 11 | 0.112 secunde | OK. | 10 | 10 | ||
| 12 | 0.172 secunde | OK. | 10 | 10 | ||
| 13 | 0.12 secunde | OK. | 15 | 15 | ||
| 14 | 0.136 secunde | OK. | 15 | 15 | ||
| 15 | 0.08 secunde | OK. | 15 | 15 | ||
| Punctaj total | 100 | |||||
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema sufixe 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ă.