数珠順列とは?
数珠順列(じゅず順列)とは、異なるn個のものを円(数珠)状に並べたときの並べ方の総数を数えるものです。ここでは、円を「回転」させて一致する並べ方だけでなく、数珠全体を裏返す「反転(鏡映)」によって一致する並べ方も同じものとみなします。これに対して円順列は回転による一致だけを同一とみなす点が異なります。これは普遍的な組合せ論の結果であり、公式は世界共通です。
このツールの使い方
nの開始値と終了値(いずれも1〜100の範囲)を入力し、表示する有効桁数を選びます。すると、その範囲の各整数nに対応する数珠順列の総数が1行ずつ表として出力されます。数珠順列の総数は階乗的に増加するため、大きな値は指定した有効桁数に丸めた指数表記で表示され、桁内に収まる値はそのままの数値で表示されます。
公式の解説
まず、異なるn個のものの並べ方(一列の順列)は\(n!\)通りあります。これを円状に並べると、ある並びを回転させた\(n\)通りが同じものになるため、\(n\)で割って円順列を得ます:\(n!/n = (n-1)!\)。さらに数珠は裏返すこともでき、各並びとその鏡像が対になるため、もう一度2で割ります。これにより数珠順列 = \((n-1)!/2\) となります。
$$N(n) = \dfrac{(n-1)!}{2}, \quad n = \text{Start } n \;\ldots\; \text{End } n$$ただし \(n = 1\) や \(n = 2\) の場合はこの式が整数にならないため、慣例として並べ方はそれぞれ1通りとします。
計算例
n = 3 から 8 までの範囲を例にとります。n=3 のとき \((3-1)!/2 = 2/2 = 1\)、n=4 のとき \(6/2 = 3\)、n=5 のとき \(24/2 = 12\)、n=6 のとき \(120/2 = 60\)、n=7 のとき \(720/2 = 360\)、n=8 のとき \(5040/2 = 2520\) となります。デフォルト範囲の上限である n=30 では \(29!/2 = 4{,}420{,}880{,}996{,}869{,}850{,}977{,}271{,}808{,}000{,}000\)、およそ \(4.42 \times 10^{30}\) になります。
よくある質問
なぜ2で割るのですか? この2は反転(鏡映)対称性を取り除くためのものです。数珠は裏返しても同じに見えるため、同じ巡回順序の時計回りと反時計回りの並びを1通りとして数えます。
なぜ n=1 と n=2 は特別扱いなのですか? 一般の公式ではどちらも0.5となってしまい、並べ方の数として成り立ちません。幾何学的には1個または2個のものの並べ方は1通りしかないため、1とします。
円順列との違いは何ですか? 円順列は回転による一致のみを同一とみなし、その総数は \((n-1)!\) です。数珠順列はさらに反転も許すため、\(n \geq 3\) では \((n-1)!/2\) となります。