Time limit: 0.1s
Memory limit: 4MB
Input: tablou.in
Output: tablou.outPoints by default: 10p
Se consideră un tablou cu N linii și N coloane (numerotate de la la ) care conține valoarea în fiecare dintre cele celule. Valorile din tablou pot fi modificate prin aplicarea a două operații codificate astfel:
- , prin care se schimbă simultan toate semnele numerelor din linia cu numărul .
- , prin care se schimbă simultan toate semnele numerelor din coloana cu numărul .
Cerință
- Dându-se o succesiune de operații ( sau ) asupra liniilor/coloanelor tabloului inițial (în care toate celulele conțin valoarea ) să se determine numărul valorilor pozitive din tablou la finalul executării celor operații.
- Să se determine numărul minim de operații sau , care, aplicate tabloului inițial, îl modifică astfel încât tabloul obținut să conțină exact valori negative.
Date de intrare
Fișierul de intrare tablou.in
conține pe prima linie numărul sau , reprezentând numărul cerinței ce trebuie rezolvată.
- Dacă atunci linia a doua a fișierului de intrare conține numerele și , separate printr-un spațiu, iar următoarele linii conțin fiecare câte o literă mare ( sau ) și un număr , separate printr-un spațiu, reprezentând codificarea uneia dintre cele două operații ( sau ).
- Dacă atunci linia a doua a fișierului de intrare conține numerele și , separate printr-un spațiu.
Date de ieșire
- Dacă , atunci fișierul de ieșire
tablou.out
conține pe prima linie un număr natural, reprezentând numărul valorilor pozitive din tabloul obținut la finalul executării celor operații asupra tabloului inițial (răspunsul la cerința ). - Dacă , atunci fișierul de ieșire
tablou.out
conține pe prima linie un număr natural reprezentând numărul minim de operații sau , care, aplicate tabloului inițial, îl modifică astfel încât tabloul obținut să conțină exact valori negative (răspunsul la cerința ). Dacă prin aplicarea de operații sau tabloului inițial nu se poate obține un tablou cu valori negative, atunci, fișierul va conține pe prima linie valoarea (zero).
Restricții și precizări
- și sunt numere naturale
- ; ; ; ;
- Prin schimbare de semn, valoarea se transformă în și valoarea se transformă în
- Se acordă puncte din oficiu și câte de puncte pentru rezolvarea corectă a fiecărei cerințe.
Exemplul 1
tablou.in
1
4 4
L 1
L 3
C 1
L 1
tablou.out
10
Explicație
. La finalul aplicării succesiunii de operații, tablou modificat are conținutul:
-1 1 1 1
-1 1 1 1
1 -1 -1 -1
-1 1 1 1
Astfel, tabloul conține valori pozitive.
Exemplul 2
tablou.in
2
3 5
tablou.out
3
Explicație
Sunt necesare minimum operații, de exemplu:
Exemplul 3
tablou.in
2
4 7
tablou.out
0
Explicație
Nu există nicio succesiune de operații pentru care să se obțină valori negative.