Jestem wielkim fanem gry Creeper World, a zwłaszcza kontynuacji. Nie musisz wiedzieć, jak działa ta gra, aby odpowiedzieć na pytanie, chciałem tylko wspomnieć, skąd pochodzi moje pytanie.
W grze Twoim celem jest zniszczenie Emiterów, które spawnują Creeper, przy użyciu broni znanej jako nullifier.
Nullifier może zniszczyć dowolny emiter w tym promieniu:
eee
eeeee
eenee
eeeee
eee
Każdy zerujący MOŻE celować w wiele Emiterów.
Twój cel
Biorąc pod uwagę tablicę symulującą mapę 2D składającą się z niczego i emiterów z dowolnymi znakami, które mogą ci się spodobać, mogą to być spacje i litery e lub liczby - po prostu upewnij się, że można je rozróżnić, wypisz tę samą mapę z optymalną ilością nullifierów n (lub tego, co chcesz ), tak aby emitery były niszczone przy użyciu najmniejszej liczby elementów unieważniających.
Jeśli istnieje wiele optymalnych sposobów na zrobienie tego, samo wyjście byłoby w porządku. Jeśli jednak zadania nie da się rozwiązać, powiedzmy, że jest tak wiele emiterów, że żaden układ nigdy nie trafi na wszystkie z nich, musisz wydać coś wyraźnie odróżniającego, wystarczy null
Szybkie zasady:
- Dane wejściowe: tablica wielowymiarowa
- Dane wejściowe będą zawierać dwa znaki, co oznacza, że nic, a emiter , uwzględni to, co znajduje się w odpowiedzi
- Dane wyjściowe: tablica wielowymiarowa
- Dane wyjściowe będą zawierać trzy znaki, co oznacza nic , emiter i nullifier LUB rozpoznawalne dane wyjściowe, jeśli danych wejściowych nie można rozwiązać
- Możesz zamienić znak „ nic” na nullifier
- Nullifier może trafić do wielu emiterów i zawsze trafi wszystkie znajdujące się w zasięgu
- Nullifier może trafić w wskazany powyżej obszar i zawsze trafi we wszystkie emitery, na które może celować
- Najkrótsze odpowiedzi w bajtach wygrywają
- standardowe luki zabronione
Przykłady
Wejście:
[[ , ,e, , ],
[ , , , , ],
[e, , , ,e],
[ , , , , ],
[ , ,e, , ]]
Wynik:
[[ , ,e, , ],
[ , , , , ],
[e, ,n, ,e],
[ , , , , ],
[ , ,e, , ]]
Wejście:
[[e,e,e,e,e],
[e, , , ,e],
[e, , , ,e],
[e, , , ,e],
[e,e,e,e,e]]
Wynik:
[[e,e,e,e,e],
[e, ,n, ,e],
[e, , , ,e],
[e, ,n, ,e],
[e,e,e,e,e]]
Wejście:
[[e, , , , , , ,e, ,e, , , ,e, ,e, ,e, ,e],
[ , ,e, , ,e, , , ,e,e, , , , ,e, , , , ],
[ , ,e, , , ,e, ,e, ,e, ,e, ,e, ,e, , , ],
[e, , , ,e, ,e, , , , , , , , , , , ,e, ],
[e, , ,e, , , , , ,e, ,e, ,e, ,e, , , ,e],
[ , , ,e, ,e, ,e, , , , , , , , , ,e, , ],
[ ,e,e, ,e, , , ,e, ,e,e, ,e, ,e, ,e, , ],
[ , ,e, , , ,e, , , , , , , , ,e,e, ,e, ],
[ , , ,e, , , , ,e,e, , , , , , , , ,e, ],
[e, , , , , , ,e, , , ,e,e, ,e, , , , , ],
[ ,e,e, , ,e, , , , ,e, , , , , , ,e, , ],
[ , , ,e,e, ,e, ,e, , , ,e,e, ,e, ,e, ,e],
[e,e, , , , ,e, , , ,e, , , , , , , , , ],
[ , , ,e, , , , , ,e, , ,e, ,e, ,e, ,e, ],
[ , , , ,e, ,e, , , , , , , , , , , , , ],
[e,e, , ,e,e, , ,e, , ,e, ,e, ,e, ,e, ,e],
[e, ,e, ,e, , ,e,e,e, , ,e, , , ,e, , ,e],
[ , , , ,e, , , , , ,e, , , ,e, , , , , ],
[ , ,e, , , ,e, ,e, , , ,e, , , , ,e, , ],
[ , , ,e, ,e, ,e, , ,e,e, , ,e,e, , ,e, ]]
Wyjście (To wyjście jest wykonane ręcznie i może nie być optymalnym wyjściem):
[[e, , , , , , ,e, ,e, , , ,e, ,e, ,e, ,e],
[ , ,e, , ,e, , ,n,e,e, , , ,n,e, , , , ],
[ ,n,e, , ,n,e, ,e, ,e, ,e, ,e, ,e, ,n, ],
[e, , , ,e, ,e, , , , , , , , , , , ,e, ],
[e, , ,e, , , , , ,e, ,e, ,e, ,e, , , ,e],
[ , ,n,e, ,e, ,e, , , ,n, , , , , ,e, , ],
[ ,e,e, ,e, ,n, ,e, ,e,e, ,e, ,e,n,e, , ],
[ , ,e, , , ,e, , , , , , , , ,e,e, ,e, ],
[ , , ,e, , , , ,e,e, , , , , , , , ,e, ],
[e, ,n, , , , ,e, , , ,e,e, ,e, , , , , ],
[ ,e,e, , ,e,n, , ,n,e, , , ,n, , ,e,e, ],
[ , , ,e,e, ,e, ,e, , , ,e,e, ,e, ,e, ,e],
[e,e, , , , ,e, , , ,e, , , , , , , , , ],
[ , , ,e, ,n, , , ,e, , ,e, ,e, ,e, ,e, ],
[ ,n, , ,e, ,e, , , , , , , ,n, , , ,n, ],
[e,e, , ,e,e, , ,e,n, ,e, ,e, ,e, ,e, ,e],
[e, ,e, ,e, , ,e,e,e, , ,e, , , ,e, , ,e],
[ , , , ,e, , , , , ,e, ,n, ,e, , ,n, , ],
[ , ,e, ,n, ,e, ,e, , , ,e, ,n, , ,e, , ],
[ , , ,e, ,e, ,e, ,n,e,e, , ,e,e, , ,e, ]]
Wejście:
[[e,e],
[e,e]]
Wynik:
null
0,1i2czy podobna?