Трехмерный символ Леви-Чивита является функцией f
принятия троек чисел (i,j,k)
каждого в {1,2,3}
, чтобы {-1,0,1}
, определяется как:
f(i,j,k) = 0
когдаi,j,k
не различимы, то естьi=j
илиj=k
илиk=i
f(i,j,k) = 1
когда(i,j,k)
есть циклический сдвиг(1,2,3)
, это один из(1,2,3), (2,3,1), (3,1,2)
.f(i,j,k) = -1
когда(i,j,k)
есть циклический сдвиг(3,2,1)
, это один из(3,2,1), (2,1,3), (1,3,2)
.
Результатом является знак перестановки (1,2,3)
с неперестановками, дающими 0. В качестве альтернативы, если мы связываем значения 1,2,3
с ортогональными единичными базисными векторами e_1, e_2, e_3
, то f(i,j,k)
это определитель матрицы 3x3 со столбцами e_i, e_j, e_k
.
вход
Три номера {1,2,3}
по порядку. Или вы можете использовать нулевую индексацию {0,1,2}
.
Выход
Их значение функции Леви-Чивита от {-1,0,1}
. Это код гольф.
Контрольные примеры
Есть 27 возможных входов.
(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