MENU
  • トップページ
  • サイトマップ
  • 会社概要
  • プライバシーポリシー
  • お問い合わせ
数学家庭教師は(有)峰企画
  • トップページ
  • サイトマップ
  • 会社概要
  • プライバシーポリシー
  • お問い合わせ
数学家庭教師は(有)峰企画
  • トップページ
  • サイトマップ
  • 会社概要
  • プライバシーポリシー
  • お問い合わせ
  1. ホーム
  2. 東大
  3. 人力シェーカーソート問題 – 2025年東大 数学 第5問

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

2025 8/16
東大
2025年3月6日2025年8月16日

A1 と A2 の双方が 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-1 – cn-2

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

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

2(cn-1 – cn-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-1 – cn-2) です。したがってA1 が 3 以上で A2 が 2 以下の場合の初期配置数も

2(cn-1 – cn-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}

です。

次ページ→ソートに関するうんちくです
1 2 3 4
東大
2025年
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!
目次
家庭教師ブログ
数学ブログ
家庭教師無料体験お申込み
お電話:047-499-0997