== include(page="template/taskheader" task_id="panou") ==
Buru are acasa doua panouri cu becuri nou-noute primite cadou de la Mos-Craciun. Ficare panou contine
$N x N$ becuri dispuse sub forma unui caroiaj cu $N$ linii si $N$ coloane, unele dintre becuri fiind aprinse, altele stinse. Astfel putem asocia fiecarui bec o pozitie $i j$ reprezentand linia si coloana pe care este dispus in panou. Sa consideram primul panou ca fiind panoul $A$ iar cel de-al doilea panoul $B$. Sub fiecare bec din panoul $A$ exista cate un comutator. Daca actionam un comutator aflat sub un bec situat pe linia $i$ si coloana $j$ se schimba starea becurilor $A[x][y]$ cu $x = i, y ≤ j$ sau $x < i, y = j$, unde prin $A[x][y]$ am notat pozitia becului aflat in panoul $A$ pe linia $x$ si coloana $y$. Prin schimbarea starii unui bec intelegem ca trece din aprins in stins sau din stins in aprins.
h2. Cerinta
Buru doreste ca, in urma unor comutari panoul $A$ sa arate identic cu panoul $B$. Mai mult, isi doreste sa realizeze asta printr-un numar minim de comutari. Ajutati-l pe Buru!
(Cele doua panouri sunt identice daca un bec pe linia $i$ si coloana $j$ se afla in aceiasi stare pe ambele panouri)
$N x N$ becuri dispuse sub forma unui caroiaj cu $N$ linii si $N$ coloane, unele dintre becuri fiind aprinse, altele stinse. Astfel putem asocia fiecarui bec o pozitie $i j$ reprezentand linia si coloana pe care este dispus in panou. Sa consideram primul panou ca fiind panoul $A$ iar cel de-al doilea panoul $B$. Sub fiecare bec din panoul $A$ exista cate un comutator. Daca actionam un comutator aflat sub un bec situat pe linia $i$ si coloana $j$ se schimba starea becurilor $A[x][y]$ cu $x = i, y ≤ j$ sau $x < i, y = j$, unde prin $A[x][y]$ am notat becului aflat in panoul $A$
pe linia $x$ si coloana $y$.
h2. Date de intrare
Pe prima linia a fisierul de intrare $panou.in$ se gaseste un numar natural $N$ cu semnificatia din enunt. Pe urmatoarele $N$ linii se gasesc cate $N$ caractere $0$ sau $1$ reprezentand starea unui bec
de pe primul panou (panoul $A$). In continuare, urmeaza $N$ linii care contin $N$ caractere $0$ sau $1$ reprezentand configuratia panoului $B$.
...
h2. Date de iesire
Pe prima linie a fisierul $panou.out$ se afla un numar natural $Min$ reprezentand numarul minim de comutari pe care trebuie sa-l realizeze Buru pentru a obtine doua panouri identice.
...
h2. Restrictii
* $1 ≤ N ≤ 500$
* Cele doua panouri sunt identice daca un bec pe linia $i$ si coloana $j$ se afla in aceiasi stare pe ambele panouri
* $... ≤ ... ≤ ...$
h2. Exemplu
table(example). |_. panou.in |_. panou.out |
| 2
1 0
1 0
0 0
0 0
| 1
| This is some
text written on
multiple lines.
| This is another
text written on
multiple lines.
|
h3. Explicatie
Actionand comutarul situat pe pozitia (2, 1) cele doua panouri devin identice.
...
== include(page="template/taskfooter" task_id="panou") ==