Il simbolo tridimensionale di Levi-Civita è una funzione che fprende triple di numeri (i,j,k)ciascuna in {1,2,3}, a {-1,0,1}, definite come:
f(i,j,k) = 0quandoi,j,knon sono distinti, ovveroi=joj=kok=if(i,j,k) = 1quando(i,j,k)è uno spostamento ciclico di(1,2,3), quello è uno di(1,2,3), (2,3,1), (3,1,2).f(i,j,k) = -1quando(i,j,k)è uno spostamento ciclico di(3,2,1), quello è uno di(3,2,1), (2,1,3), (1,3,2).
Il risultato è il segno di una permutazione di (1,2,3), con non permutazioni che danno 0. In alternativa, se associamo i valori 1,2,3a vettori di base di unità ortogonali e_1, e_2, e_3, allora f(i,j,k)è il determinante della matrice 3x3 con colonne e_i, e_j, e_k.
Ingresso
Tre numeri ciascuno {1,2,3}in ordine. In alternativa, puoi scegliere di utilizzare indicizzato zero {0,1,2}.
Produzione
Il loro valore della funzione Levi-Civita da {-1,0,1}. Questo è il codice golf.
Casi test
Vi sono 27 possibili ingressi.
(1, 1, 1) => 0
(1, 1, 2) => 0
(1, 1, 3) => 0
(1, 2, 1) => 0
(1, 2, 2) => 0
(1, 2, 3) => 1
(1, 3, 1) => 0
(1, 3, 2) => -1
(1, 3, 3) => 0
(2, 1, 1) => 0
(2, 1, 2) => 0
(2, 1, 3) => -1
(2, 2, 1) => 0
(2, 2, 2) => 0
(2, 2, 3) => 0
(2, 3, 1) => 1
(2, 3, 2) => 0
(2, 3, 3) => 0
(3, 1, 1) => 0
(3, 1, 2) => 1
(3, 1, 3) => 0
(3, 2, 1) => -1
(3, 2, 2) => 0
(3, 2, 3) => 0
(3, 3, 1) => 0
(3, 3, 2) => 0
(3, 3, 3) => 0