tablou

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 11 la NN) care conține valoarea 11 în fiecare dintre cele NNN \cdot N celule. Valorile din tablou pot fi modificate prin aplicarea a două operații codificate astfel:

  • L nrL \ nr, prin care se schimbă simultan toate semnele numerelor din linia cu numărul nrnr.
  • C nrC \ nr, prin care se schimbă simultan toate semnele numerelor din coloana cu numărul nrnr.

Cerință

  1. Dându-se o succesiune de KK operații (L nrL \ nr sau C nrC \ nr) asupra liniilor/coloanelor tabloului inițial (în care toate celulele conțin valoarea 11) să se determine numărul valorilor pozitive din tablou la finalul executării celor KK operații.
  2. Să se determine numărul minim de operații L nrL \ nr sau C nrC \ nr, care, aplicate tabloului inițial, îl modifică astfel încât tabloul obținut să conțină exact ZZ valori negative.

Date de intrare

Fișierul de intrare tablou.in conține pe prima linie numărul p=1p = 1 sau p=2p = 2, reprezentând numărul cerinței ce trebuie rezolvată.

  • Dacă p=1p = 1 atunci linia a doua a fișierului de intrare conține numerele NN și KK, separate printr-un spațiu, iar următoarele KK linii conțin fiecare câte o literă mare (LL sau CC) și un număr nrnr, separate printr-un spațiu, reprezentând codificarea uneia dintre cele două operații (L nrL \ nr sau C nrC \ nr).
  • Dacă p=2p = 2 atunci linia a doua a fișierului de intrare conține numerele NN și ZZ, separate printr-un spațiu.

Date de ieșire

  • Dacă p=1p = 1, 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 KK operații asupra tabloului inițial (răspunsul la cerința 11).
  • Dacă p=2p = 2, 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 L nrL \ nr sau C nrC \ nr, care, aplicate tabloului inițial, îl modifică astfel încât tabloul obținut să conțină exact ZZ valori negative (răspunsul la cerința 22). Dacă prin aplicarea de operații L nrL \ nr sau C nrC \ nr tabloului inițial nu se poate obține un tablou cu ZZ valori negative, atunci, fișierul va conține pe prima linie valoarea 00 (zero).

Restricții și precizări

  • N,K,ZN, K, Z și nrnr sunt numere naturale
  • 3N20 0003 \leq N \leq 20 \ 000; 1K43 0001 \leq K \leq 43 \ 000; 1ZNN1 \leq Z \leq N \cdot N; 1nrN1 \leq nr \leq N;
  • Prin schimbare de semn, valoarea 1-1 se transformă în 11 și valoarea 11 se transformă în 1-1
  • Se acordă 1010 puncte din oficiu și câte 4545 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

N=4N = 4. La finalul aplicării succesiunii de K=4K = 4 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 1010 valori pozitive.

Exemplul 2

tablou.in

2
3 5

tablou.out

3

Explicație

Sunt necesare minimum 33 operații, de exemplu:

L 3L \ 3
L 1L \ 1
C 1C \ 1

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ă Z=7Z = 7 valori negative.

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