Extinction is the rule. Survival is the exception.
Carl Sagan
Cerință
Este anul 4924 și umanitatea a reușit să colonizeze o bună parte a galaxiei. Planeta Aurora este casa uneia dintre cele mai dezvoltate civilizații din toată galaxia, iar conducătorul ei, Dr. Kelden Amadiro are planuri malefice pentru planeta-mamă, Terra. Suprafața Terrei este delimitată în teritorii care formează un grid cu linii și coloane, fiecare teritoriu identificându-se printr-o pereche , unde este indicele liniei, iar indicele coloanei. Amadiro a dezvoltat un virus care poate să eradice populația unui teritoriu într-o singură zi. Virusul se răspândește de la teritoriu la teritoriu în următorul mod: dacă un teritoriu este vecin pe latură cu cel puțin două teritorii infectate, atunci și el devine infectat. Cum crearea virușilor în laborator este o muncă foarte complicată și costisitoare, Amadiro se întreabă care este numărul minim de teritorii care trebuie infectate, astfel încât virusul să se răspândească într-un final peste toate teritoriile Terrei.
Date de intrare
Pe prima linie se găsesc dimensiunile Terrei, și .
Date de ieșire
Pe prima linie se va găsi un singur număr natural, reprezentând numărul minim de teritorii ce trebuie infectate astfel încât toată planeta să ajungă infectată.
Restricții și precizări
- Pentru teste în valoare de puncte, și
- Pentru teste în valoare de puncte, și
- Pentru teste în valoare de puncte,
Exemplul 1
stdin
2 2
stdout
2
Explicație
Putem infecta inițial teritoriile și .
Teritoriul este vecin pe latură cu ambele (are vecinii infectați la stânga și jos), așa că va deveni infectat. Similar, teritoriul are și el doi vecini infectați (sus și dreapta) și va deveni infectat. Astfel, cu teritorii inițiale, tot gridul este infectat.
Un singur teritoriu infectat inițial nu s-ar putea răspândi deloc.
Exemplul 2
stdin
1 4
stdout
3
Explicație
Într-un grid , teritoriile de la capete ( și ) au un singur vecin. Deoarece pentru a se infecta prin răspândire un teritoriu necesită doi vecini infectați, capetele nu pot fi niciodată infectate de la altele, deci trebuie infectate inițial.
Dacă infectăm doar și , teritoriile din mijloc ( și ) vor avea doar câte un vecin infectat, deci virusul nu se va răspândi.
Suntem obligați să mai infectăm un teritoriu inițial, de exemplu pe . Astfel, teritoriul are acum vecinii și infectați și va fi și el infectat, acoperind toată harta cu un total de teritorii alese inițial.