Fișierul intrare/ieșire | v.in, v.out | Sursă | ONI 2004 clasa a 7-a |
---|---|---|---|
Autor | Roxana Tîmplaru | Adăugată de |
|
Timp de execuție pe test | 0.7 sec | Limită de memorie | 5120 KB |
Scorul tău | N/A | Dificultate |
Vezi soluțiile trimise | Statistici
V (clasa a 7-a)
Notă: această problemă a fost modificată față de original. I-au fost adăugate teste mai mari și au fost modificate limitele de timp și de memorie, astfel încît să devină competitivă și pentru clasa a 8-a.
Se consideră un tablou bidimensional cu m linii și n coloane. Se numește traseu în V o parcurgere prin elementele tabloului astfel:
- se pleacă întotdeauna dintr-un element de pe prima linie a tabloului, se ajunge în final într-un alt element de pe prima linie a tabloului, trecând prin cel puțin 3 elemente, fără a trece printr-un element de mai multe ori;
- parcurgerea elementelor tabloului se face în forma unei singure litere V ca în desen, dintr-un element putându-se trece doar într-un alt element imediat vecin pe diagonală.
Fiecare element al tabloului conține valori întregi. La parcugerea traseului se calculează suma elementelor de pe traseu.
Cerință
Determinați traseul în V care are suma maximă. În cazul în care există mai multe trasee de sumă maximă, se va alege traseul care parcurge cele mai puține elemente. Dacă și în acest caz există mai multe soluții, se alege traseul cel mai din stânga (cel cu indicele coloanei de pornire cel mai mic).
Date de intrare
Din fișierul de intrare v.in se citesc de pe prima linie valorile naturale m și n, separate printr-un spațiu, reprezentând numărul de linii și numărul de coloane ale tabloului. Pe următoarele m linii se află câte n valori întregi separate prin spații, reprezentând elementele tabloului.
Date de ieșire
Fișierul de ieșire v.out va conține o singură linie pe care vor fi scrise trei valori naturale S C L, reprezentând suma maximă, coloana de pornire și respectiv linia pe care se află vârful V-ului traseului determinat.
Restricții
- 1 ≤ m, n ≤ 1500
- -60000 ≤ valorile elementelor tabloului ≤ 60000
- Pentru datele de test suma valorilor din elementele oricărui traseu va fi între -2 000 000 000 și 2 000 000 000.
- Pentru 50% din teste 1 ≤ m, n ≤ 101
- Pentru 70% din teste 1 ≤ m, n ≤ 1000
Exemplu
v.in | v.out | Explicații |
---|---|---|
5 9 3 4 12 4 6 7 9 5 12 0 4 5 7 9 -5 1 1 5 0 98 34 0 1 7 7 1 1 6 7 8 -9 0 2 3 5 22 47 62 31 55 0 83 23 77 10 |
54 1 3 |
Exemple de alte trasee care se pot crea conform datelor de mai sus, dar care au suma mai mică decât cea din rezultat: ![]() |