#4136
Fie S = (S1, S2, ..., SN) un şir format din N numere naturale mai mici decât 10 şi x un număr natural cu p cifre, reprezentat în baza 10 prin x = x1x2...xp. Observaţi că poziţiile din şirul S sunt numerotate de la stânga la dreapta de la 1 la N, iar cifrele numărului x sunt numerotate de la stânga la dreapta de la 1 la p (cifra p fiind cifra unităţilor). Scrieţi un program care, cunoscând şirul S, rezolvă următoarele două cerinţe:
Nr perechi de forma x j, determină pentru fiecare pereche dacă numărul x apare ca subșir în prefixul de lungime j al lui S şi afişează valoarea 1 în caz afirmativ, respectiv valoarea 0 în caz contrar;Nr perechi de forma a b, determină şi afişează pentru fiecare pereche numărul de numere naturale din intervalul închis [a, b] care apar ca subșir în șirul S.ONI 2022, clasa a VIII-a
| Problema | subsir | Operații I/O |
subsir.in/subsir.out
|
|---|---|---|---|
| Limita timp | 0.4 secunde | Limita memorie |
Total: 128 MB
/
Stivă 64 MB
|
| Id soluție | #62484230 | Utilizator | |
| Fișier | subsir.cpp | Dimensiune | 1.45 KB |
| Data încărcării | 22 Ianuarie 2026, 18:04 | Scor/rezultat | Eroare de compilare |
subsir.cpp: In function 'int main()': subsir.cpp:31:14: error: expected unqualified-id before '[' token auto [pos, val] = q.front(); ^ subsir.cpp:35:32: error: 'pos' was not declared in this scope int next = nextPos[pos][d]; ^ subsir.cpp:38:43: error: 'val' was not declared in this scope long long newVal = (long long)val * 10 + d; ^
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema subsir 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ă.