#4660
seqstr
Se dau două șiruri, A
și B
, cu valori din mulțimea {0, 1}
.
1. Să se afle numărul de subsecvențe distincte din B
care sunt subșiruri în A
.
2. Să se afle, pentru o subsecvență B[p...q]
, numărul de subșiruri din A
egale cu aceasta.
3. Să se afle numărul de subșiruri din A
care sunt subsecvențe în B
.
ONI 2024, clasa a 10-a
Problema | seqstr | Operații I/O |
![]() seqstr.in /seqstr.out
|
---|---|---|---|
Limita timp | 0.4 secunde | Limita memorie |
Total: 512 MB
/
Stivă 64 MB
|
Id soluție | #50760718 | Utilizator | |
Fișier | seqstr.cpp | Dimensiune | 5.09 KB |
Data încărcării | 30 Aprilie 2024, 13:36 | Scor / rezultat | 100 puncte |
seqstr.cpp: In function 'int main()': seqstr.cpp:7:41: warning: comparison between signed and unsigned integer expressions [-Wsign-compare] #define FORN(i, n) for(int i = 0; i < (n); ++i) ^ seqstr.cpp:56:13: note: in expansion of macro 'FORN' FORN(i, start.size() - 1) sol += firstEnd[start[i]] != -1; ^ seqstr.cpp:64:50: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses] dp[p][p][j & 1] = dp[p][p][j & 1 ^ 1]; ^ seqstr.cpp:68:54: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses] dp[p][i][j & 1] = dp[p][i][j & 1 ^ 1]; ^ seqstr.cpp:69:77: warning: suggest parentheses around arithmetic in operand of '^' [-Wparentheses] if (b[i] == a[j]) dp[p][i][j & 1] += dp[p][i - 1][j & 1 ^ 1]; ^ seqstr.cpp:119:24: warning: suggest explicit braces to avoid ambiguous 'else' [-Wparentheses] if (firstEnd[bi] != -1) ^ seqstr.cpp:20:37: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("seqstr.in", "r", stdin); ^ seqstr.cpp:21:39: warning: ignoring return value of 'FILE* freopen(const char*, const char*, FILE*)', declared with attribute warn_unused_result [-Wunused-result] freopen("seqstr.out", "w", stdout); ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | OK. | 3 | 3 | ||
2 | 0 secunde | OK. | 4 | 4 | ||
3 | 0 secunde | OK. | 1 | 1 | ||
4 | 0 secunde | OK. | 1 | 1 | ||
5 | 0 secunde | OK. | 1 | 1 | ||
6 | 0 secunde | OK. | 1 | 1 | ||
7 | 0 secunde | OK. | 1 | 1 | ||
8 | 0 secunde | OK. | 1 | 1 | ||
9 | 0 secunde | OK. | 1 | 1 | ||
10 | 0.004 secunde | OK. | 1 | 1 | ||
11 | 0.004 secunde | OK. | 1 | 1 | ||
12 | 0.008 secunde | OK. | 3 | 3 | ||
13 | 0.012 secunde | OK. | 3 | 3 | ||
14 | 0.06 secunde | OK. | 3 | 3 | ||
15 | 0.056 secunde | OK. | 3 | 3 | ||
16 | 0.14 secunde | OK. | 3 | 3 | ||
17 | 0.392 secunde | OK. | 4 | 4 | ||
18 | 0 secunde | OK. | 1 | 1 | ||
19 | 0 secunde | OK. | 2 | 2 | ||
20 | 0 secunde | OK. | 1 | 1 | ||
21 | 0 secunde | OK. | 2 | 2 | ||
22 | 0 secunde | OK. | 2 | 2 | ||
23 | 0 secunde | OK. | 2 | 2 | ||
24 | 0 secunde | OK. | 2 | 2 | ||
25 | 0.184 secunde | OK. | 15 | 15 | ||
26 | 0 secunde | OK. | 4 | 4 | ||
27 | 0 secunde | OK. | 5 | 5 | ||
28 | 0 secunde | OK. | 1 | 1 | ||
29 | 0 secunde | OK. | 2 | 2 | ||
30 | 0 secunde | OK. | 2 | 2 | ||
31 | 0 secunde | OK. | 2 | 2 | ||
32 | 0 secunde | OK. | 2 | 2 | ||
33 | 0 secunde | OK. | 4 | 4 | ||
34 | 0 secunde | OK. | 4 | 4 | ||
35 | 0.136 secunde | OK. | 4 | 4 | ||
36 | 0.24 secunde | OK. | 4 | 4 | ||
37 | 0.356 secunde | OK. | 4 | 4 | ||
Punctaj total | 100 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema seqstr 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ă.