albine

Time limit: 0.15s Memory limit: 32MB Input: albine.in Output: albine.out

Matca cea tânără a decis să părăsească stupul şi să îşi facă propria familie de albine, lucru nu tocmai uşor. Ea, împreună cu albinele sale trebuie să meargă din floare în floare până la marginea plantaţiei. Plantaţia are formă dreptunghiulară cu NN linii (numerotate de la 11 la NN) şi MM coloane (numerotate de la 11 la MM). În fiecare punct este o floare. Florile sunt codificate cu 00 sau 11, cele codificate cu 00 putând fi ocupate doar de matcă, cele cu valoarea 11 doar de câte o albină. Roiul de albine pleacă de la marginea stângă a plantaţiei (coloana 11) şi trebuie să ajungă în marginea din dreapta (coloana MM). La un pas, toate albinele (inclusiv matca) trebuie să se afle pe poziţii consecutive pe aceeaşi coloană. La pasul următor ele se pot deplasa doar pe coloana următoare, dar tot pe poziţii vecine (eventual îşi pot schimba ordinea). Efortul depus pentru deplasarea de pe o coloană pe alta este egal cu diferenţa dintre prima linie ocupată de un membru al roiului de albine (matca sau albină) la pasul anterior şi prima linie ocupată de un membru al roiului albine (matca sau albină) după mutare.

Cerinţă

Determinaţi numărul maxim de membri ai roiului de albine (matcă + albine) care pot părăsi stupul pentru a traversa toată plantaţia în scopul formării unei noi familii. Determinaţi, de asemenea efortul total minim cu care matca poate traversa plantaţia cu numărul maxim de albine determinat.

Date de intrare

Prima linie a fişierului de intrare albine.in conţine două numere naturale NN şi MM separate printr-un spaţiu reprezentând numărul de linii, respectiv numărul de coloane ale plantaţiei.
Următoarele NN linii conţin câte MM numere din mulţimea {0,1}\{0, 1\}, separate prin câte un spaţiu, reprezentând codurile florilor de pe fiecare linie a plantaţiei.

Date de ieşire

Prima linie a fişierului de ieşire albine.out conţine 22 numere naturale separate printr-un spaţiu, reprezentând numărul maxim de membri ai familiei de albine (matcă + albine) care pot traversa plantaţia (inclusiv matca) şi costul minim al traversării plantaţiei.

Restricţii şi precizări

  • 1N,M1 0001 \leq N, M \leq 1 \ 000;
  • Pentru 50%50\% din teste 1N,M3001 \leq N, M \leq 300;
  • Un roi de albine este format dintr-o matcă şi 00 sau mai multe albine.
  • Se garantează existenţa unui traseu.
  • Matca poate parcurge plantaţia şi singură.
  • Pentru rezolvarea corectă doar a primei cerinţe se acordă 30%30\% din punctaj.

Exemplu

albine.in

5 3
0 1 0
0 0 1
1 1 0
1 1 1
0 0 0

albine.out

3 0

Explicație

O altă posibilitate (nu şi singura) de a parcurge plantaţia ar fi fost ca grupul de 33 albine sa se aşeze pe prima coloană începând cu poziţia 33, pe coloana a 22 – a începând cu poziţia 11, iar pe coloana a 33 – a începând cu poziţia 22. În acest caz costul total ar fi fost 33.

Log in or sign up to be able to send submissions!