人力シェーカーソート問題 – 2025年東大 数学 第5問

左右を並び替えてソートします

2025年3月8日

A1A2 の双方が 2 以下の場合

 右側の2枚にフィーチャーするのはうまく行かなかったので、今度は左側から攻めます。

 左側にフィーチャーするとオペレーションの途中でカードが入れ替わる撹乱要因が発生しないので、今度はうまく行きそうな気がします。

 そこでまず、左側の2枚が1または2の場合です。この場合、左の2枚とそれ以外はオペレーションによって入れ替わることはありません。

 右側のカードは 3 から n までの n-2 枚ですが、オペレーションは大小を比較するだけでカードの値それ自体は問題にしません。よってオペレーションの結果 3 から n までの n-2 枚が昇順に並ぶ初期配置数と、 1 から n-2 までの n-2 枚が昇順に並ぶ初期配置数は同じで cn-2 です。

 左2枚の初期配置数は2通りなので、並び方の総数は

2cn-2

です。

A1 が 2 以下で A2 が 3 以上の場合

 \begin{aligned}

\overset{ \substack{ 1 \, \text{or} \,2 \\ \downarrow } }{
 \,\colorbox{black}{  $ \color{white}{A_1 }$} }

\overset{ \substack{ 3\text{以上} \\ \downarrow } }{
 \, \fbox{ $A_{2}$} }
\,
\overbrace {
\underset{ \substack{  \uparrow  \\3\text{以上}  } }
{\fbox {  $ A_3 $} }
\,
\underset{ \substack{  \uparrow  \\3\text{以上}  } }
{\fbox {  $ A_4 $} }

\cdots 
\underset{ \substack{  \uparrow  \\1 \, \text{or} \,2  } }{
 \colorbox{black}{  $ \color{white}{A_i }$} }

 \cdots 

\underset{ \substack{  \uparrow  \\3\text{以上}  } }
{\fbox {  $ A_{n} $} }

}^{n -2\text{枚}}

\end{aligned}

 明らかに、オペレーションの結果 n 枚のカードが昇順に並ぶことと、右側 n-1 枚のカードが(T2),(T3),…,(Tn-1)→(Tn-1),(Tn-2),…,(T2) の結果昇順に並ぶことは同値です。

 よって右側 n-1 枚の初期配置数は cn-1 だと言いたいところですが、そこには A2 が1または2である場合の数も含まれます。その数は cn-2 なので差し引いて

cn-1cn-2

が右側 n-1 枚の初期配置数です。

 一番左側の A1 の値は1か2の2パターンあるので、A1 が 2 以下で A2 が3以上の場合の初期配置数は

2(cn-1cn-2)

です。

A1 が 3 以上で A2 が 2 以下の場合

 \begin{aligned}
\overset{ \substack{ 3\text{以上} \\ \downarrow } }{
 \, \fbox{ $A_{1}$} }

\overset{ \substack{ 1 \, \text{or} \,2 \\ \downarrow } }{
 \,\colorbox{black}{  $ \color{white}{A_2 }$} }

\,
\overbrace {
\underset{ \substack{  \uparrow  \\3\text{以上}  } }
{\fbox {  $ A_3 $} }
\,
\underset{ \substack{  \uparrow  \\3\text{以上}  } }
{\fbox {  $ A_4 $} }

\cdots 
\underset{ \substack{  \uparrow  \\1 \, \text{or} \,2  } }{
 \colorbox{black}{  $ \color{white}{A_i }$} }

 \cdots 

\underset{ \substack{  \uparrow  \\3\text{以上}  } }
{\fbox {  $ A_{n} $} }

}^{n -2\text{枚}}

\end{aligned}

 最初の (T1) 実施後の並びは

 \begin{aligned}

\overset{ \substack{ 1 \, \text{or} \,2 \\ \downarrow } }{
 \,\colorbox{black}{  $ \color{white}{A_2 }$} }

\overset{ \substack{ 3\text{以上} \\ \downarrow } }{
 \, \fbox{ $A_{1}$} }
\,
\overbrace {
\underset{ \substack{  \uparrow  \\3\text{以上}  } }
{\fbox {  $ A_3 $} }
\,
\underset{ \substack{  \uparrow  \\3\text{以上}  } }
{\fbox {  $ A_4 $} }

\cdots 
\underset{ \substack{  \uparrow  \\1 \, \text{or} \,2  } }{
 \colorbox{black}{  $ \color{white}{A_i }$} }

 \cdots 

\underset{ \substack{  \uparrow  \\3\text{以上}  } }
{\fbox {  $ A_{n} $} }

}^{n -2\text{枚}}

\end{aligned}

です。これが昇順に並ぶための初期配置数は先に見たように、2(cn-1cn-2) です。したがってA1 が 3 以上で A2 が 2 以下の場合の初期配置数も

2(cn-1cn-2)

です。

 ゆえに

\begin{aligned}
c_n = & 2c_{n-2} + 2(c_{n-1} - c_{n-2})+ 2(c_{n-1} - c_{n-2}) \\
 = & 4c_{n-1} - 2 c_{n-2}
\end{aligned}

です。

東大2025年

Posted by mine_kikaku