graphlogo

Wydział Matematyki i Informatyki

Uniwersytetu Mikołaja Kopernika w Toruniu

1inf 2024/25 - Podstawy Algorytmiki i Programowania labA*

[f1] Saper
Data zakończenia: 2024-11-04 23:59
Języki: c cpp java pas
Limit czasu: 3.0 s
Limit pamięci: 0 MB
Limit rozmiaru rozwiązania: 100 kB
Problem

Czy kiedykolwiek grałeś w Sapera? To taka mała, przyjemna gierka dostarczana z systemami operacyjnymi, których nazw niestety nie pamiętam. Cóż, celem gry jest dowiedzieć się, gdzie na planszy o rozmiarach M×N są ustawione miny. Aby Ci pomóc, gra pokazuje liczbę min w sąsiedztwie każdego prawidłowo odsłoniętego pola. Na przykład załóżmy, że na planszy 4×4 są ustawione 2 miny (reprezentowane przez znak *):

*...
....
.*..
....

Gdy tę samą planszę uzupełnimy liczbami w sposób opisany wyżej, otrzymamy:

*100
2210
1*10
1110

Jak pewnie już zauważyliście, każde pole może mieć w sąsiedztwie najwyżej 8 min.

Wejście

Wejście będzie składać się z dowolnej liczby testów. Pierwszy wiersz każdego testu zawiera dwie liczby całkowite n oraz m (0 < n, m <= 100), które oznaczają odpowiednio liczbę wierszy i kolumn. Następne n wierszy zawiera dokładnie po m znaków i stanowi opis planszy. Każdy bezpieczne pole jest reprezentowane przez znak "." (bez cudzysłowów), a każda mina jest reprezentowana przez znak "*" (również bez cudzysłowu). Test w którym n = m = 0 oznacza koniec wejścia i nie powinien być przetwarzany.

Wyjście

Dla każdego testu, należy wydrukować następujący komunikat:

Field #x:

Gdzie X oznacza numer testu (poczynając od 1). Następne n wierszy powinno zawierać opis planszy, przy czym znaki "." są zastąpione liczbą znajdujących się w sąsiedztwie min. Między kolejnymi testami trzeba wydrukować pusty wiersz.

Przykładowe wejście

4 4
*...
....
.*..
....
3 5
**...
.....
.*...
0 0

Przykładowe wyjście

Field #1:
*100
2210
1*10
1110

Field #2:
**100
33200
1*100
Powrót
© 2009-2020 • ZawodyWeb Team
IKS - Inwestycja w Kierunki Strategiczne na Wydziale Matematyki i Informatyki UMK

Projekt współfinansowany ze środków Unii Europejskiej w ramach Europejskiego Funduszu Społecznego