数学A / 場合の数
2×n をタイルで敷き詰める(フィボナッチ数)
問題
のマス目を のタイル(縦でも横でもよい)で隙間も重なりもなく敷き詰める方法の総数 を求めよ。
ヒントを見る
左端をどう埋めるかで場合分け。縦タイル1枚なら残りは 、横タイル2枚(上下)なら残りは 。 の漸化式は?
解答・解説
方針
一番左の列に注目。縦タイル1枚で埋めると残りは 、横タイル2枚で埋めると残りは 。これで漸化式が立つ。
解答
⓪ 発想 — どう考え始めるか。 敷き詰めの総数は、端がどう埋まるかで場合分けすると漸化式が立つ。
一番左の列の埋まり方は2通りしかない: 縦タイル1枚(残りは )か、横タイル2枚を上下に重ねる(残りは )。
よって — フィボナッチの漸化式だ。 から 。
① 漸化式を立てる。 左端の埋め方で
② 初期値。 ( は縦タイル1枚のみ)、( は縦2枚 または 横2枚)。
③ 結論。 よって 。たとえば 。
まとめ 「左端の埋め方」で場合分けすると、 の敷き詰めは と に帰着し、。フィボナッチ数 が現れる。数え上げと漸化式の融合。
発展 — 一歩先へ。 盤を に広げると、答えは漸化式 (奇数 では 0)という別の顔になり、 のフィボナッチがいかに特別に単純かが分かる。「端の埋まり方で分類 → 漸化式」という設計図自体は盤が変わっても通用する — 状態(端の欠け方)を増やして追いかける、動的計画法の入り口だ。
左端の詰め方で場合分けすると 、。よって (フィボナッチ数)。
別解
「1段・2段の階段登り」と同一視する(対応で翻訳する)。 敷き詰めを左から読むと、各位置で「縦1枚( 列消費)」か「横2枚( 列消費)」のどちらかを選んでいる。
つまり敷き詰めは、 を と の順序つきの和に分解する方法(合成)と1対1対応する:
これは「1段か2段ずつで 段の階段を登る方法」とまったく同じ問題 — 答えが同じフィボナッチ数になるのは当然だった。
漸化式(本解)は答えを計算する装置、対応づけは「見た目の違う問題が同じ構造だ」と見抜く目。数え上げでは、知っている問題への1対1対応が最強の解法になることが多い。
ポイント
- 一番左の列の埋め方(縦1枚 / 横2枚)で場合分け。
- 残りが と になり 。
- よりフィボナッチ数 。
よくある間違い
- 左端の場合分けで「横タイル1枚だけ」の埋め方を数える(横1枚では上下どちらかが欠ける。横は必ず2枚セット)。
- 初期値を でなく の扱いで混乱する((何も置かない1通り)とすれば漸化式と整合)。
- フィボナッチとの対応の添字()を1つずらす。