Diferente pentru problema/pixeli intre reviziile #2 si #3

Nu exista diferente intre titluri.

Diferente intre continut:

4 1
3 2
După a doua împărţire rezultă @16@ imagini de câte @1@ pixel:
@44@ @41@ \(\quad\) @14@ @11@
@43@ @42@ \(\quad\) @13@ @12@
După a doua împărţire rezultă 16 imagini de câte 1 pixel:
44 41  14 11
43 42  13 12
@34@ @31@ \(\quad\) @24@ @21@
@33@ @32@ \(\quad\) @23@ @22@
34 31  24 21
33 32  23 22
Iniţial, imaginea este complet albă.
Acum începe jocul. RAU-Gigel se gândeşte la @2@ tipuri de operaţii:
Operaţia @1 x@ schimbă starea pixelul identificat cu şirul @x@, descris ca mai sus. Dacă pixelul @x@ nu este setat, îl setează. Dacă pixelul @x@ este deja setat, atunci îl resetează.
Operaţia @2 x@ , unde @x@ are aceeaşi semnificaţie ca mai sus, este o interogare: dacă @x@ este setat, se răspunde cu @0@. Dacă @x@ nu este setat, se cere determinarea dimensiunii celei mai mari imagini complet albe, dintre cele create de RAU-Gigel, care conţine pixelul @x@. Dimensiunea este dată de numărul de pixeli conţinut.
Acum începe jocul. RAU-Gigel se gândeşte la 2 tipuri de operaţii:
Operaţia 1 x schimbă starea pixelul identificat cu şirul x, descris ca mai sus. Dacă pixelul x nu este setat, îl setează. Dacă pixelul x este deja setat, atunci îl resetează.
Operaţia 2 x , unde x are aceeaşi semnificaţie ca mai sus, este o interogare: dacă x este setat, se răspunde cu 0. Dacă x nu este setat, se cere determinarea dimensiunii celei mai mari imagini complet albe, dintre cele create de RAU-Gigel, care conţine pixelul x. Dimensiunea este dată de numărul de pixeli conţinut.
Dându-se @N@ cu semnificaţia de mai sus şi @M@, reprezentând numărul de operaţii şi cele @M@ operaţii de tipul @1@ şi @2@, să se răspundă la operaţiile de tip @2@.
 
h1. Date de intrare
Dându-se N cu semnificaţia de mai sus şi M, reprezentând numărul de operaţii şi cele M operaţii de tipul 1 şi 2, să se răspundă la operaţiile de tip 2.
h2. Date de intrare
Fişierul de intrare $pixeli.in$ ...
Fişierul de intrare $pixeli.in$ conţine pe prima linie numerele naturale N şi M separate cu un spaţiu. Pe următoarele M linii se află câte o cifră de 1 sau 2 şi câte un string, de forma tip_operaţie x, reprezentând tipul operaţiei şi şirul x.
h2. Date de ieşire
În fişierul de ieşire $pixeli.out$ ...
Fişierul de ieşire $pixeli.out$ va conţine răspunsurile pentru operaţiile de tip 2, câte unul pe linie.
h2. Restricţii
* $... ≤ ... ≤ ...$
* $2 ≤ N ≤ 2.000.000.000$, $1 ≤ M ≤ 10.000$
* In toate testele, N este o putere a lui 2
* Toate şirurile x sunt corect definite
* Pentru teste în valoare de 30 de puncte, N <= 1.000 şi M <= 50
h2. Exemplu
table(example). |_. pixeli.in |_. pixeli.out |
| This is some
  text written on
  multiple lines.
| This is another
  text written on
  multiple lines.
| 4 11
1 11
1 22
2 22
2 33
2 44
2 24
1 22
2 22
2 24
1 11
2 44
| 0
4
4
1
4
4
16
|
h3. Explicaţie
...
Iniţial imaginea este albă:
 
0 0   0 0
0 0   0 0
 
0 0   0 0
0 0   0 0
 
După primele 2 operaţii de tip 1, imaginea va conţine:
 
0 0   0 1
0 0   0 0
 
0 0   0 0
0 0   0 1
 
Următoarele 4 interogări vor referi, în ordine, pixelii marcati cu a, b, c, d (imaginea de mai jos). Cum a era setat, răspunsul este 0. Cea mai mare imagine albă, creată de RAU-Gigel, care conţine b, este colţul stânga jos cu 4 pixeli. La fel pentru c. În cazul pixelului d, răspunsul este 1 (chiar el).
 
c 0   0 e
0 0   0 0
 
0 0   d 0
b 0   0 a
 
Urmează o operaţie de tip 1 care resetează pixelul notat cu a (şirul 22). Următoarele 2 interogări pentru a şi d generează răspunsurile 4, respectiv 4.
 
În final, se resetează şi pixelul e, iar ultima interogare, pentru c, va determina răspunsul 16, toată imaginea fiind acum complet albă.
== include(page="template/taskfooter" task_id="pixeli") ==

Nu exista diferente intre securitate.

Topicul de forum nu a fost schimbat.