To wyzwanie jest bardzo proste. Otrzymujesz jako dane wejściowe macierz kwadratową, reprezentowaną w dowolny rozsądny sposób, i musisz wyprowadzić iloczyn iloczynu przekątnych macierzy.
Konkretne przekątne to przekątna biegnąca od górnego lewego do prawego dolnego i od prawego górnego do lewego dolnego.
Przypadki testowe
[[-1, 1], [-2, 1]] -> -3
[[824, -65], [-814, -741]] -> 549614
[[-1, -8, 4], [4, 0, -5], [-3, 5, 2]] -> -10
[[0, -1, 0], [1, 0, 2], [1, 0, 1]] -> 1
code-golf
math
matrix
linear-algebra
Maltysen
źródło
źródło
[:+/(<0 1)|:(*|."1)
ma 19 bajtówJulia, 25 bajtów
Wypróbuj online!
źródło
rot90
, dobry pomysł!JavaScript (ES6), 45 bajtów
źródło
R, 26 bajtów
źródło
Mathematica, 17 bajtów
źródło
APL (Dyalog) ,
159 bajtówWypróbuj online!
W jaki sposób?
+/
- suma1 1⍉
- przekątna⌽×⊢
- elementowe mnożenie macierzy z jej odwrotnościąźródło
Clojure, 57 bajtów
źródło
Haskell ,
8048 bajtówBardziej podobało mi się moje poprzednie rozwiązanie, ale jest ono znacznie krótsze (w zasadzie robi to samo co rozwiązanie Python):
Wypróbuj online!
źródło
J, 18 bajtów
Wyjaśnienie:
źródło
05AB1E , 5 bajtów
Wypróbuj online lub sprawdź wszystkie przypadki testowe .
Wyjaśnienie:
źródło