@whuberの回答の優雅さにかなり感銘を受けました。正直に言うと、彼の解決策の手順に従うために、新しい概念に精通する必要がありました。それに多くの時間を費やした後、私は得たものを投稿することにしました。したがって、以下は彼のすでに受け入れられた応答への明確なメモです。このように、独創性の試みはありません。私の唯一の目的は、関連するいくつかの手順に従うためにいくつかの追加のアンカーポイントを提供することです。
だからここに行く...
2n
2.混乱の公式を導出できますか?
n
d(n)=(n−1)[d(n−2)+d(n−1)]=
=nd(n−2)−d(n−2)+nd(n−1)−d(n−1)
d(n)−nd(n−1)=−[d(n−1)−(n−1)d(n−2)]
ここで、この方程式のLHSとRHSの括弧内の部分との並列性に注意してください。再帰的に続けることができます。
d(n)−nd(n−1)=−[d(n−1)−(n−1)d(n−2)]=
=(−1)2[d(n−2)−(n−2)d(n−3)]=⋯=(−1)n−2d(2)−2d(1)
d(n)=nd(n−1)+(−1)n
逆方向の作業:
d(2)=1
d(3)=3d(2)−1=3∗1−1
d(4)=4d(3)+1=4∗3∗1−4+1
d(5)=5d(4)−1=5∗4∗3∗1−5∗4+5−1
d(6)=6d(5)+1=6∗5∗4∗3∗1−6∗5∗4+6∗5−6+1=
=6!(12−13∗2+14∗3∗2−15∗4∗3∗2+16!)=
=6!(16!−15!+14!−13!+12!−11!+1)
だから一般的に
d(n)=n!(1−1+12!−13!+14!+⋯+1n!)
exx=−1
d(n)≈n!e
a,b,c,d,e,fb,d,a,c,f,ea -> b -> d -> c after which it returns to a
e -> f
(a b d c)(e f)
4
(2n)!2n2nn!p(2n)=(2n)!2nn!
以下のためのR
シミュレーション:
1。 paired <- function(x) crossprod(x[x] - 1:length(x))==0
x[x]
8Paul -> Maria
Maria -> Paul
Max -> John
John -> Max
Max -> Maria
Maria -> Max
Paul -> John
John -> Paul
i
1
2。 good <- function(x) sum(x==1:length(x)) == 0
x(1,2,3,4,5,6,7,8)
3.k.paired <- sum(i.good & i.paired)
図の上記のようなペアの順列を除外しますが、これらは混乱ではありません。
v <- c(1,2,3,4,5,6,7,8)
w <- c(1,2,3,5,4,6,7,8)
(c("is v paired?" = paired(v), "is w paired?" = paired(w),
"is v a derang?" = good(w), "is w a derang?" = good(w)))
# not all paired permutations are derangements.