#4406
Fibosnek
Se consideră o matrice cu n
linii și m
coloane ce conține numere naturale nenule. Se definește o parcurgere snek a matricei un șir de valori obținut astfel: se parcurg elementele matricei coloană cu coloană. Se numește secvență fibosnek un termen sau o succesiune de termeni aflați pe poziții consecutive în parcurgerea snek, cu proprietatea că fiecare dintre ei este număr Fibonacci. Similar, se numește secvență non-fibosnek un termen sau o succesiune de termeni aflați pe poziții consecutive în parcurgerea snek, cu proprietatea că niciunul dintre ei nu este număr Fibonacci. Lungimea secvenței este egală cu numărul termenilor săi. Suma secvenței este egală cu suma termenilor săi.
Fiind date elementele matricei cu n
linii și m
coloane, să se determine:
1. numărul de numere Fibonacci din matricea dată inițial;
2. suma celei mai lungi secvențe fibosnek ce poate fi obținută, știind că se poate transforma cel mult o secvență non-fibosnek în una fibosnek folosind procedeul explicat mai sus. Dacă se pot obține mai multe astfel de secvențe de lungime maximă, se va alege prima întâlnită în parcurgerea snek a matricei.
OJI 2023, clasa a IX-a
Problema | Fibosnek | Operații I/O |
fibosnek.in /fibosnek.out
|
---|---|---|---|
Limita timp | 0.8 secunde | Limita memorie |
Total: 6 MB
/
Stivă 4 MB
|
Id soluție | #51917197 | Utilizator | |
Fișier | fibosnek.cpp | Dimensiune | 2.22 KB |
Data încărcării | 08 Septembrie 2024, 20:15 | Scor / rezultat | 90 puncte |
fibosnek.cpp: In function 'int main()': fibosnek.cpp:60:30: warning: array subscript has type 'char' [-Wchar-subscripts] n3++; S3+=fibo[idx[k]]; k++; ^ fibosnek.cpp:78:34: warning: array subscript has type 'char' [-Wchar-subscripts] n3++; S3+=fibo[idx[k]]; ^ fibosnek.cpp:83:20: warning: 'S2' may be used uninitialized in this function [-Wmaybe-uninitialized] SMax=S1+S2+S3; ^ fibosnek.cpp:83:20: warning: 'S1' may be used uninitialized in this function [-Wmaybe-uninitialized] fibosnek.cpp:48:46: warning: 'mij' may be used uninitialized in this function [-Wmaybe-uninitialized] if(nr-fibo[mij]<=fibo[mij+1]-nr) ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | OK. | 5 | 5 | ||
2 | 0 secunde | OK. | 5 | 5 | ||
3 | 0.016 secunde | OK. | 5 | 5 | ||
4 | 0.116 secunde | OK. | 5 | 5 | ||
5 | 0.052 secunde | OK. | 10 | 10 | ||
6 | 0 secunde | OK. | 10 | 10 | ||
7 | 0 secunde | OK. | 10 | 10 | ||
8 | 0 secunde | OK. | 10 | 10 | ||
9 | 0 secunde | OK. | 10 | 10 | ||
10 | 0.012 secunde | OK. | 10 | 10 | ||
11 | 0.024 secunde | OK. | 10 | 10 | ||
12 | 0.116 secunde | Raspuns gresit. | 10 | 0 | ||
Punctaj total | 90 |
www.pbinfo.ro permite evaluarea a două tipuri de probleme:
Problema Fibosnek 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ă.