Definicja
Centrosymmetric matryca jest kwadratem matrycy , która jest symetryczna względem jego środka. Bardziej rygorystycznie, macierz o rozmiarze jest centrosymetryczna, jeśli dla dowolnego spełniona jest następująca zależność: n × n i ,A i ,
Przykłady takich matryc
Oto ilustracja symetrii takich macierzy (zapożyczona z wyżej wspomnianego artykułu w Wikipedii):
Centrosymetryczna matryca o równej długości ( ):
I nieparzystej długości ( ):
Zadanie i specyfikacje
Biorąc pod uwagę kwadratową macierz wielkości co najmniej , wyprowadzaj jedną z dwóch różnych i spójnych wartości, decydując, czy macierz jest centrosymetryczna, czy nie. Możesz założyć, że macierz będzie składała się wyłącznie z dodatnich liczb całkowitych.
Jednak twój kod musi być również centrosymetryczny. Oznacza to, że musi to być program / funkcja (lub odpowiednik) składający się z wierszy, z których każdy zawiera bajtów w kodowaniu języka, i musi spełniać powyższą definicję, ale z bajtami zamiast dodatnich liczb całkowitych. Wynik twojego zgłoszenia będzie wynosił , przy czym niższy będzie lepszy.n n n
Możesz pobierać dane wejściowe i generować dane wyjściowe dowolną standardową metodą w dowolnym rozsądnym formacie, zwracając uwagę, że te luki są domyślnie zabronione. Możesz (opcjonalnie) wybrać także rozmiar , jako dane wejściowe (chyba że weźmiesz dane jako listę 1D, w którym to przypadku możesz wziąć jako dodatkowe dane wejściowe).n 2
Przypadki testowe
Prawda:
[[1, 2], [2, 1]]
[[1, 2, 3], [5, 6, 5], [3, 2, 1]]
[[10, 5, 30], [2, 6, 2], [30, 5, 10]]
[[100, 100, 100], [100, 50, 100], [100, 100, 100]]
[[1, 2, 3, 4], [5, 6, 7, 8], [8, 7, 6, 5], [4, 3, 2, 1]]
[[3, 4, 5, 6, 7], [5, 6, 7, 8, 9], [3, 2, 10, 2, 3], [9, 8, 7, 6, 5], [7, 6, 5, 4, 3]]
Falsy:
[[1, 2], [1, 2]]
[[1, 2, 10], [5, 6, 5], [11, 2, 1]]
[[14, 5, 32], [2, 6, 2], [30, 5, 16]]
[[19, 19, 19], [40, 50, 4], [19, 19, 19]]
[[1, 2, 20, 4], [7, 6, 7, 8], [8, 7, 6, 6], [3, 3, 2, 1]]
[[3, 4, 5, 6, 7], [5, 6, 7, 8, 9], [4, 5, 10, 4, 5], [5, 6, 7, 8, 9], [3, 4, 5, 6, 7]]
#
nie będzie działał, ponieważ komentarze poprzedzone #
są tylko wstawiane: P
#
), aby cała dolna część kodu była komentarzem.