Windows Minesweeper (WinMine) Windows sistemində ən tanınmış oyunlardan biridir. Qaydaları sadədir və bir raund oynamaq cəmi bir neçə dəqiqə vaxt alır. Əvvəlcə bu oyunu qısaca təqdim edək (əgər onsuz da tanışsınızsa, növbəti abzası keçə bilərsiniz): Oyunun məqsədi minaları olmayan bütün xanaları açmaqdır (siçanın sol düyməsi ilə), mina olan xananı açmaqdan qaçmaq şərti ilə. Minaların yerləri məntiqə əsaslanaraq müəyyən edilir. Oyun lövhəsində hər hansı bir xana basıldıqda, seçilmiş xananın və ya bir-birinə qonşu olan xanalardan ibarət bir qrupun (böyük sayda boş xana birdən açıla bilər) altındakı gizli məzmun üzə çıxır. Bəzi xanalarda heç bir rəqəm olmur, bəzilərində isə 1-dən 8-ə qədər rəqəm var – bu rəqəmlər açılmış xananın ətrafındakı (8 qonşu) minaların sayını göstərir. Oyunu udmaq üçün minalı olmayan bütün xanalar mina açmadan aşkar edilməlidir; bayraq qoyulmayan qalan minalar kompüter tərəfindən avtomatik olaraq işarələnir. Minesweeper-in xarakterik xüsusiyyəti odur ki, başlanğıcda və bəzi aralıq mərhələlərdə təsadüfi elementlər olur.
Vikipediya
Caddy boş vaxtlarında WinMine oynamağı çox sevir, çünki bu oyun həm sadə, həm də ağıllı və maraqlıdır. Lakin, bəzən oyun zamanı müəyyən edilə bilməyən vəziyyətlərlə qarşılaşanda əsəbləşir. Aşağıdakı vəziyyəti nümunə kimi nəzərdən keçirin:

Bu nümunədəki qırmızı çevrədə iki qalan xana tamamilə müəyyən deyil və aydındır ki, qalan BİR mina üçün iki mümkün yerləşmə mövcuddur. Caddy belə vəziyyətlərdə yalnız təxmin edə bilər. Bəzən yalnız iki seçimi olur (nümunədə olduğu kimi), bəzən isə daha çox. Bu səbəbdən, o, oyun lövhəsinin hazırkı vəziyyətinə əsaslanaraq minaların mümkün müxtəlif yerləşmələrinin sayını hesablaya bilən bir köməkçiyə ehtiyac duyur.
Belə bir oyun köməkçisi Caddy üçün çox faydalı və maraqlı olardı, buna görə də o, dərhal proqramlaşdırmağa başlayır. Təəssüf ki, Caddy, Proqramlaşdırma və Alqoritmlər dərsində bütün vaxtını WinMine oynamağa sərf etdiyindən, bu mürəkkəb vəzifə onun üçün mümkünsüz görünür. WinMine-i çox sevdiyindən sizdən, əla proqramçıdan kömək istəyir. Problemi sadələşdirmək üçün o, üç məhdudiyyət əlavə etmişdir:
Verilən oyun vəziyyəti yalnız başlanğıc lövhəsində BİR xanaya klik etməklə yaranıb və buna zəmanət verilir.
Verilən vəziyyətdə, əgər iki açılmamış xana birbaşa və ya digər açılmamış xanalardan keçməklə birləşirsə, onlar həm də ikiqat bağlıdır. Yəni, digər açılmamış xanalardan istənilən biri çıxarılsa belə, bu iki xana bir-birinə bağlı qalır. Burada iki xana yalnız kənarları ilə birləşirsə bağlı sayılır. Bu o deməkdir ki, bir xananın maksimum dörd bağlı qonşusu ola bilər.
Verilən vəziyyətdə, əgər iki rəqəmli xana birbaşa, yaxud digər rəqəmlər vasitəsilə bir-birinə birləşibsə, həmin əlaqəli rəqəmlərin ətrafındakı bütün açılmamış xanalardan ibarət çoxluq da bağlı olmalıdır.
Xahiş edirik, Caddy-yə kömək edin!
Bir neçə test halı var. Girişin birinci sətrində müsbət tam ədəd T (1 \leq T \leq 50) – testlərin sayı verilir. Sonra T test halı gəlir. Hər test üçün ilk sətirdə üç müsbət tam ədəd n, m və M (1 \leq n, m \leq 100, 1 \leq M \leq 1000) verilir; və – lövhənin sətr və sütunlarının, isə cəmi minaların sayıdır. Daha sonra n \times m ölçülü simvol matrisası veriləcək və bu matrisada cari vəziyyət təsvir olunur. Matrisa iki tip simvoldan ibarət olacaq:
0-dan 8-ə qədər rəqəmlər: bu, həmin xananın ətrafındakı minaların sayıdır ('0' – boş xana deməkdir).
'.' (nümayiş xatirinə dırnaq içində): bu, xananın açılmadığını göstərir.
Hər test üçün məsələ nömrəsini də yazmaqla, bu vəziyyətdə mümkün mina yerləşmələrinin sayını, 1000003-ə bölmə ilə tapıb çıxışa yazın. Nümunəyə baxın.
Nümunə 1