#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 | #45380830 | Utilizator | |
Fișier | fibosnek.cpp | Dimensiune | 2.21 KB |
Data încărcării | 11 Octombrie 2023, 09:54 | Scor / rezultat | 5 puncte |
fibosnek.cpp: In function 'int main()': fibosnek.cpp:81:36: warning: unused variable 'max_sec' [-Wunused-variable] int fib, cnt = 0, sec_cnt = 0, max_sec = 0; ^ fibosnek.cpp:82:19: warning: unused variable 's_max' [-Wunused-variable] long long int s_max = 0, s_temp = 0, s_t = 0; ^ fibosnek.cpp:82:42: warning: unused variable 's_t' [-Wunused-variable] long long int s_max = 0, s_temp = 0, s_t = 0; ^ fibosnek.cpp: In function 'int fibonacci(int)': fibosnek.cpp:18:12: warning: 'c' may be used uninitialized in this function [-Wmaybe-uninitialized] return c; ^ fibosnek.cpp: In function 'int binarySearch1(int, int, int)': fibosnek.cpp:18:12: warning: 'c' may be used uninitialized in this function [-Wmaybe-uninitialized] fibosnek.cpp:11:15: note: 'c' was declared here long long c; ^ fibosnek.cpp:18:12: warning: 'c' may be used uninitialized in this function [-Wmaybe-uninitialized] return c; ^ fibosnek.cpp:11:15: note: 'c' was declared here long long c; ^ fibosnek.cpp: In function 'int binarySearch2(int, int, int)': fibosnek.cpp:18:12: warning: 'c' may be used uninitialized in this function [-Wmaybe-uninitialized] return c; ^ fibosnek.cpp:11:15: note: 'c' was declared here long long c; ^ fibosnek.cpp:18:12: warning: 'c' may be used uninitialized in this function [-Wmaybe-uninitialized] return c; ^ fibosnek.cpp:11:15: note: 'c' was declared here long long c; ^ fibosnek.cpp:18:12: warning: 'c' may be used uninitialized in this function [-Wmaybe-uninitialized] return c; ^ fibosnek.cpp:11:15: note: 'c' was declared here long long c; ^ fibosnek.cpp:18:12: warning: 'c' may be used uninitialized in this function [-Wmaybe-uninitialized] return c; ^ fibosnek.cpp:11:15: note: 'c' was declared here long long c; ^ fibosnek.cpp:18:12: warning: 'c' may be used uninitialized in this function [-Wmaybe-uninitialized] return c; ^ fibosnek.cpp:11:15: note: 'c' was declared here long long c; ^ fibosnek.cpp:18:12: warning: 'c' may be used uninitialized in this function [-Wmaybe-uninitialized] return c; ^ fibosnek.cpp:11:15: note: 'c' was declared here long long c; ^ fibosnek.cpp:18:12: warning: 'c' may be used uninitialized in this function [-Wmaybe-uninitialized] return c; ^ fibosnek.cpp:11:15: note: 'c' was declared here long long c; ^
Test | Timp | Mesaj evaluare | Scor posibil | Scor obținut | ||
---|---|---|---|---|---|---|
1 | 0 secunde | OK. | 5 | 5 | ||
2 | 0.032 secunde | Raspuns gresit. | 5 | 0 | ||
3 | Depășit | Limita de timp depășită | 5 | 0 | ||
4 | Depășit | Limita de timp depășită | 5 | 0 | ||
5 | Depășit | Limita de timp depășită | 10 | 0 | ||
6 | 0 secunde | Raspuns gresit. | 10 | 0 | ||
7 | 0 secunde | Raspuns gresit. | 10 | 0 | ||
8 | 0 secunde | Raspuns gresit. | 10 | 0 | ||
9 | 0.004 secunde | Raspuns gresit. | 10 | 0 | ||
10 | 0.068 secunde | Raspuns gresit. | 10 | 0 | ||
11 | 0.288 secunde | Raspuns gresit. | 10 | 0 | ||
12 | Depășit | Limita de timp depășită | 10 | 0 | ||
Punctaj total | 5 |
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ă.