三次元エディントンのイプシロンは関数である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)
で決定因子列の3×3の行列のはe_i, e_j, e_k
。
入力
それぞれから3つの数字 {1,2,3}
順に。または、zero-indexedを使用することもできます{0,1,2}
。
出力
Levi-Civita関数値 {-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