Ce défi est très simple. On vous donne en entrée une matrice carrée, représentée de façon saine, et vous devez sortir le produit scalaire des diagonales de la matrice.
Les diagonales en particulier sont la diagonale allant de haut à gauche à bas à droite et de haut à droite à bas à gauche.
Cas de test
[[-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
la source
la source
[:+/(<0 1)|:(*|."1)
est de 19 octetsJulia, 25 octets
Essayez-le en ligne!
la source
rot90
, bonne idée!JavaScript (ES6), 45 octets
la source
R, 26 octets
la source
Mathematica, 17 octets
la source
APL (Dyalog) ,
159 octetsEssayez-le en ligne!
Comment?
+/
- somme1 1⍉
- diagonale de⌽×⊢
- multiplication par élément de la matrice avec son inversela source
Clojure, 57 octets
la source
Haskell ,
8048 octetsJ'ai aimé ma solution précédente plus, mais elle est beaucoup plus courte (fait essentiellement la même chose que la solution Python):
Essayez-le en ligne!
la source
J, 18 octets
Explication:
la source
05AB1E , 5 octets
Essayez-le en ligne ou vérifiez tous les cas de test .
Explication:
la source