#1729
Îl cunoașteți pe Dorel cel ”priceput” la toate. Acesta și-a propus să “strice” armonia unui șir S format din N caractere litere mici ale alfabetului englez, S=(S[1],S[2],…,S[N]).
El alege la întâmplare un caracter din șir, caracter aflat pe poziția k (1≤k≤N) și caută în stânga lui k primul caracter mai mare sau egal cu S[k], fie acesta aflat pe poziția i, S[k]≤S[i]. Dacă acesta nu există, i=1. Această alegere nu este suficientă. Dorel caută în dreapta lui k primul caracter mai mic sau egal cu S[k], fie acesta pe poziția j, S[j]≤S[k]. Dacă acesta nu există, j=N. Extrage din șirul S subșirul astfel delimitat. Ca urmare a alegerii făcute, Dorel obține două subșiruri:
X=(S[1],S[2],…,S[i-1],S[j+1],S[j+2],…,S[N])Y=(S[i],S[i+1],…,S[j])Cunoscând șirul S, ajutați-l pe Dorel să răspundă la Q întrebări de forma:
k din șirul S să se determine lungimea maximă a unei subsecvențe palindromice comune șirurilor X și Y.Lot Juniori Magurele, 2016
| Problema | Dorel | Operații I/O |
dorel.in/dorel.out
|
|---|---|---|---|
| Limita timp | 0.5 secunde | Limita memorie |
Total: 128 MB
/
Stivă 8 MB
|
| Id soluție | #51739225 | Utilizator | |
| Fișier | dorel.c | Dimensiune | 4.10 KB |
| Data încărcării | 11 August 2024, 23:03 | Scor/rezultat | 93 puncte |
dorel.c: In function 'main': dorel.c:36:11: warning: ignoring return value of 'fscanf', declared with attribute warn_unused_result [-Wunused-result] fscanf(fin, "%d", &q); ^ dorel.c:40:15: warning: ignoring return value of 'fscanf', declared with attribute warn_unused_result [-Wunused-result] fscanf(fin, "%d", &k); ^
| Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
|---|---|---|---|---|---|---|
| 0 | 0 secunde | OK. | 5 | 5 | ||
| 1 | 0 secunde | OK. | 5 | 5 | ||
| 2 | 0 secunde | OK. | 5 | 5 | ||
| 3 | 0.228 secunde | OK. | 5 | 5 | ||
| 4 | 0.276 secunde | OK. | 5 | 5 | ||
| 5 | 0.108 secunde | OK. | 5 | 5 | ||
| 6 | 0.044 secunde | OK. | 5 | 5 | ||
| 7 | 0.272 secunde | OK. | 5 | 5 | ||
| 8 | 0.2 secunde | OK. | 5 | 5 | ||
| 9 | 0.068 secunde | OK. | 5 | 5 | ||
| 10 | 0.14 secunde | OK. | 5 | 5 | ||
| 11 | 0.168 secunde | OK. | 5 | 5 | ||
| 12 | 0.344 secunde | OK. | 5 | 5 | ||
| 13 | 0.06 secunde | OK. | 5 | 5 | ||
| 14 | 0.008 secunde | OK. | 5 | 5 | ||
| 15 | 0.008 secunde | OK. | 5 | 5 | ||
| 16 | 0.004 secunde | OK. | 6 | 6 | ||
| 17 | Depășit | Limita de timp depășită | 7 | 0 | ||
| 18 | 0.304 secunde | OK. | 7 | 7 | ||
| Punctaj total | 93 | |||||
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Dorel 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ă.