Biorąc pod uwagę niepustą prostokątną tablicę liczb całkowitych od 0
do 9
, wypisz liczbę komórek, które są 8
i nie mają sąsiada, który jest 8
. Sąsiedztwo jest tutaj rozumiane w sensie Moore'a , to znaczy obejmuje przekątne. Każda komórka ma 8
sąsiadów, z wyjątkiem komórek na krawędziach tablicy.
Na przykład biorąc pod uwagę dane wejściowe
8 4 5 6 5
9 3 8 4 8
0 8 6 1 5
6 7 9 8 2
8 8 7 4 2
wyjście powinno być 3
. Trzy kwalifikujące się komórki byłyby następujące, oznaczone gwiazdką (ale należy wypisać tylko liczbę takich wpisów):
* 4 5 6 5
9 3 8 4 *
0 8 6 1 5
6 7 9 * 2
8 8 7 4 2
Dodatkowe zasady
Opcjonalnie możesz wziąć dwie liczby określające rozmiar tablicy jako dodatkowe dane wejściowe.
Dane wejściowe można pobierać dowolnymi rozsądnymi środkami . Format jest elastyczny jak zwykle. Może to być na przykład tablica znaków 2D lub lista liczb lub płaska lista.
Programy lub funkcje są dozwolone w dowolnym języku programowania . Standardowe luki są zabronione.
Najkrótszy kod w bajtach wygrywa.
Przypadki testowe
Wkład:
8 4 5 6 5 9 3 8 4 8 0 8 6 1 5 6 7 9 8 2 8 8 7 4 2
Wydajność:
3
Wkład
8 8 2 3
Wydajność:
0
Wkład:
5 3 4 2 5 2
Wydajność:
0
Wkład:
5 8 3 8
Wydajność:
2
Wkład:
8 0 8
Wyjście:
2
.Wkład:
4 2 8 5 2 6 1 8 8 5 5 8
Wydajność:
1
Wkład:
4 5 4 3 8 1 8 2 8 2 7 7 8 3 9 3 9 8 7 8 5 4 2 8 4 5 0 2 1 8 6 9 1 5 4 3 4 5 6 1
Wyjście
3
.Wkład:
8
Wydajność:
1
Wkład:
8 5 8 1 6 8 7 7 9 9 2 8 2 7 8 3 2 8 4 9 7 3 2 7 9 2 9 7 1 9 5 6 6 9 8 7 3 1 5 2 1 9 9 7 1 8 8 2 3 5 6 8 1 4 7 5
Wyjście:
4
.Wkład:
8 1 8 2 5 7 8 0 1
Wyjście:
3
.
Dane wejściowe w formacie MATLAB:
[8 4 5 6 5; 9 3 8 4 8; 0 8 6 1 5; 6 7 9 8 2; 8 8 7 4 2]
[8 8; 2 3]
[5 3 4; 2 5 2]
[5 8 3 8]
[8; 0; 8]
[4 2 8 5; 2 6 1 8; 8 5 5 8]
[4 5 4 3 8 1 8 2; 8 2 7 7 8 3 9 3; 9 8 7 8 5 4 2 8; 4 5 0 2 1 8 6 9; 1 5 4 3 4 5 6 1]
[8]
[8 5 8 1 6 8 7 7; 9 9 2 8 2 7 8 3; 2 8 4 9 7 3 2 7; 9 2 9 7 1 9 5 6; 6 9 8 7 3 1 5 2; 1 9 9 7 1 8 8 2; 3 5 6 8 1 4 7 5]
[8 1 8; 2 5 7; 8 0 1]
Dane wejściowe w formacie Python:
[[8, 4, 5, 6, 5], [9, 3, 8, 4, 8], [0, 8, 6, 1, 5], [6, 7, 9, 8, 2], [8, 8, 7, 4, 2]]
[[8, 8], [2, 3]]
[[5, 3, 4], [2, 5, 2]]
[[5, 8, 3, 8]]
[[8], [0], [8]]
[[4, 2, 8, 5], [2, 6, 1, 8], [8, 5, 5, 8]]
[[4, 5, 4, 3, 8, 1, 8, 2], [8, 2, 7, 7, 8, 3, 9, 3], [9, 8, 7, 8, 5, 4, 2, 8], [4, 5, 0, 2, 1, 8, 6, 9], [1, 5, 4, 3, 4, 5, 6, 1]]
[[8]]
[[8, 5, 8, 1, 6, 8, 7, 7], [9, 9, 2, 8, 2, 7, 8, 3], [2, 8, 4, 9, 7, 3, 2, 7], [9, 2, 9, 7, 1, 9, 5, 6], [6, 9, 8, 7, 3, 1, 5, 2], [1, 9, 9, 7, 1, 8, 8, 2], [3, 5, 6, 8, 1, 4, 7, 5]]
[[8, 1, 8], [2, 5, 7], [8, 0, 1]]
Wyjścia:
3, 0, 0, 2, 2, 1, 3, 1, 4, 3