Fie o matrice lidoriană de linii şi coloane. Liniile matricei se numerotează de jos în sus, cu numere de la la . Coloanele matricei se numerotează de la dreapta la stânga, cu numere de la la . Matricea lidoriană este formată doar din valori şi .
Pentru fiecare linie , se calculează ca suma tuturor produselor dintre şi . Pentru fiecare coloană , se calculează ca suma tuturor produselor dintre şi .
Fie suma tuturor sumelor calculate pe linii şi fie suma tuturor sumelor calculate pe coloane. = + + ; = + + + Considerăm = + . Se înţelege prin „mutare” o interschimbare între oricare două valori şi din matrice. Jocul lidorian presupune executarea unui număr minim de mutări, astfel încât valoarea lui să fie minimă.
Cerinţă
Să se scrie un program care să permită calcularea valorii minime a lui . Pentru această valoare a lui , se cere să se determine numărul minim de mutări necesare.
Date de intrare
Fişierul de intrare joc.in
conţine în ordine, pe linii:
- , număr de linii,număr de coloane despărţite printr-un spaţiu
- ; ; ; elementele liniei , fără spaţii între ele
- ; ; ; elementele liniei , fără spaţii între ele
- ; ; ; elementele liniei , fără spaţii între ele
Date de ieșire
Fişierul joc.out
conţine, în ordine, pe prima linie, valoarea , apoi numărul minim de mutări, cu un singur spaţiu între ele.
Restricții și precizări
- ;
- matricea conţine cel puţin o cifră de
Exemplu
joc.in
5 6
100010
010000
000001
000010
011000
joc.out
28 5