Napisz funkcję (wykorzystującą jak najmniej bajtów), która pobiera dwuwymiarową tablicę dowolnej liczby kolumn i wierszy, w której:
0
reprezentuje pusty blok,1
reprezentuje blok węża.
Funkcja musi zwracać liczbę możliwych ścieżek, które przebył wąż.
Przykład 1:
Wkład:
[
[1,1,1,1,1],
[0,0,0,0,1],
[0,0,0,0,1],
]
Wydajność: 2
W powyższym przykładzie funkcja zwróci, 2
ponieważ odpowiedź jest jedna z:
Przykład 2:
Wkład:
[
[1,1,1,1],
[0,0,1,1],
[0,0,1,1],
]
Wydajność: 6
W tym przykładzie funkcja zwróci, 6
ponieważ odpowiedź jest jedna z:
Uwaga:
Oceniając dane wejściowe, możesz założyć, że:
- Tablice reprezentujące kolumny zawsze będą miały takie same rozmiary (więc tablice są prostokątne);
- Istnieje co najmniej 1 poprawna ścieżka;
- Wąż nie może przejść przez krawędzie (co może się zdarzyć w niektórych wersjach węża);
- Wąż zawsze będzie miał co najmniej 2 bloki;
- Wąż nie może poruszać się po przekątnej;
- Ścieżki są skierowane. (więc dwie ścieżki kończące się w różnych pozycjach, ale poza tym wyglądające dokładnie tak samo, nie są tą samą ścieżką, sumują się do całości)
[[0,0,1,1],[0,0,1,1],[0,0,1,1]]
. Większość odpowiedzi daje 16, ale jedna daje 15.