24
並べ替えられた!Combinatorics:Subfactorialの計算
subfactorial又はrencontres番号(A000166は)置換の組合せ論に表示階乗番号と同様の番号のシーケンスです。特に、n番目の階乗!nは、n個の要素のセットの混乱の数を示します。混乱とは、同じ位置に要素が残っていない順列です。サブ階乗は、次の繰り返し関係を介して定義できます。 !n = (n-1) (!(n-1) + !(n-2)) 実際、階乗についても同じ再帰関係が成り立ちますが、下位階乗については次から始まります。 !0 = 1 !1 = 0 (階乗の場合、もちろん1!= 1になります。) あなたの仕事は計算することである!nは、与えられたn個。 ルール 階乗のように、階乗も非常に速く成長します。プログラムが入力nのみを処理でき、!nが言語のネイティブの数値型で表現できる場合は問題ありません。ただし、アルゴリズムは理論的には任意のnに対して機能する必要があります。つまり、積分結果と中間値は、言語で正確に表現できると仮定できます。定数eが有限精度で保存または計算される場合、これは定数eを除外することに注意してください。 結果は正確な整数である必要があります(特に、科学表記法で結果を近似することはできません)。 プログラムまたは関数を作成し、入力を受け取って出力を提供する標準的な方法を使用できます。 任意のプログラミング言語を使用できますが、これらの抜け穴はデフォルトでは禁止されています。 これはcode-golfであるため、バイト単位で測定された最短の有効な回答が勝ちます。 テストケース n !n 0 1 1 0 2 1 3 2 4 9 5 44 6 265 10 1334961 12 176214841 13 2290792932 14 32071101049 20 895014631192902121 …