Biorąc pod uwagę dwa niepusty nieujemną liczbą całkowitą macierzy i B , odpowiedzi na liczbę występuje jako ciągły, ewentualnie pokrywające, podmatryca w B .
Przykłady / zasady
0. Mogą nie być żadnych podmacierzy
Odp . :
[[3,1],
[1,4]]
B :
[[1,4],
[3,1]]
Odpowiedź:
0
1. Submatrices muszą być ciągłe
Odp . :
[[1,4],
[3,1]]
B :
[[3,1,4,0,5],
[6,3,1,0,4],
[5,6,3,0,1]]
Odpowiedź:
1
(zaznaczono pogrubioną czcionką)
2. Submatrices mogą się pokrywać
Odp . :
[[1,4],
[3,1]]
B :
[[3,1,4,5],
[6,3,1,4],
[5,6,3,1]]
Odpowiedź:
2
(zaznaczone odpowiednio pogrubioną czcionką i kursywą)
3. Matryca (pod) może mieć rozmiar od 1 do 1 i więcej
Odp . :
[[3]]
B :
[[3,1,4,5],
[6,3,1,4],
[5,6,3,1]]
Odpowiedź:
3
(zaznaczono pogrubioną czcionką)
4. Macierze mogą mieć dowolny kształt
Odp . :
[[3,1,3]]
[[3,1,3,1,3,1,3,1,3]]
Odpowiedź:
4
(dwie pogrubione, dwie kursywa)
⍷
∘
), aby skrócić pociąg:+/∘∊⍷
lub nawet≢∘⍸⍷
JavaScript (ES6), 93 bajty
Pobiera dane wejściowe jako
(A)(B)
.Wypróbuj online!
źródło
R , 95 bajtów
Wypróbuj online!
źródło
Czysty ,
1189795 bajtówWypróbuj online!
źródło
Python 2 , 101 bajtów
Wypróbuj online!
źródło
Węgiel drzewny ,
3627 bajtówWypróbuj online! Znacznie krócej, gdy Equals znów działa dla tablic. Wyjaśnienie:
źródło
Python 2 , 211 bajtów
Wypróbuj online!
Dość bezpośredni. Przejdź przez większą matrycę i sprawdź, czy mniejsza matryca może się zmieścić.
Jedynym nawet nieco trudnym krokiem jest zrozumienie listy w szóstej linii, która opiera się na konwencjach Pythona do mieszania arytmetyki logicznej i całkowitej.
źródło
Groovy , 109 bajtów
Wypróbuj online!
źródło
Scala , 151 bajtów
Wypróbuj online!
źródło