東大 情報理工学系研究科 コンピュータ科学専攻 専門科目(コンピュータ科学) 2024年度 院試 過去問 解答例・解説(全4問)
全4問です。計算量理論、オートマトン理論、グラフ探索が出ています。解説はすべて、途中式と最終答は大問1問ぶんを公開しています。残りは解答PDFに収録しています。問題本文は含みません。
最終更新:
第1問 — 形式言語と状態数
NFAとDFAの差
NFAでは「この位置が後ろから 番目だ」と非決定的に推測できるため, 個程度の状態で足りる。一方,DFAでは最後の 文字を区別できなければならない。 そのため全ての長さ の接尾辞に対応する 通りの情報が必要になる。
平方数位置の非正規性
正規言語は,十分後ろでは周期的な判定しかできない。平方数の間隔は ずつ広がるので,固定周期では表せない。この性質を との共通部分に落とすと,非正規性が見えやすくなる。
解答
- は,後ろから3文字目が である語の集合である。 非決定性有限オートマトンは,「この が後ろから3文字目である」と推測して, その後にちょうど2文字を読むように作ればよい。 状態を とし,初期状態を ,受理状態を とする。 遷移は である。 からの遷移は不要である。
- とおくと, は任意の接頭辞の後に があり, その後ろにちょうど 文字が続く語の集合である。したがって である。
- は正規言語ではない。 もし が正規なら,正規言語 との共通部分も正規である。 ところが である。これは,語 において先頭の が後ろから 番目に あるためである。 集合 は最終的周期的ではない。実際,平方数の間隔 は無限に大きくなる。したがって一文字アルファベット上の正規言語に必要な 最終周期性を満たさない。よって は正規言語ではない。
- 長さ のすべての語 を考える。異なる2語 を取ると,ある位置 で である。 ここで接尾辞 を付けると,語 の後ろから 番目の文字は になり, 同様に の後ろから 番目の文字は になる。 したがって一方だけが に属する。 よって長さ の 個の語はすべてMyhill--Nerode同値で区別される。 したがって を受理する任意のDFAは少なくとも 状態を持つ。
最終答
は正規ではない。任意のDFAで を受理するには少なくとも 状態が必要である。
第2問 — キャッシュとIPC
競合ミスが支配的になる理由
配列 と の開始アドレスは だけ離れている。 これはキャッシュ容量256バイトの整数倍なので,ダイレクトマップでは同じインデックスに 対応する。したがって, を読んだ直後に へ書くと,同じ場所を取り合う。
IPC計算の注意点
IPCは命令数をサイクル数で割る。キャッシュヒット率だけからIPCは直接出ない。 `div' の4サイクル,メモリアクセスのヒット・ミス時のサイクル,ループ回数をすべて足し合わせる。
第3問 — 連結性と全域木
全域木の基本
探索で初めて頂点を発見した辺だけを集めると,すべての頂点に到達し,かつ各頂点は一度だけ 親を持つ。したがって閉路は生じず,全域木になる。
辺交換の考え方
木から1辺を抜くと必ず2成分に分かれる。そこに別の横断辺を1本戻すと,再び連結になり, 辺数も のままなので木である。全域木の交換性を使う典型的な議論である。
第4問 — 評価戦略と再帰
値呼びと名前呼びの違い
値呼びでは関数に入る前に引数を一度だけ評価する。名前呼びでは,引数式を本体に そのまま代入し,必要になった時点で評価する。そのため,同じ式が複数回現れると, 同じ計算が繰り返される。
呼び出し回数が増える理由
この関数では条件判定で を使い,さらに返り値側でも を含む式が現れる。 名前呼びではそれぞれの出現箇所で引数式が再評価されるため,呼び出し回数が指数的に増える。
年度別の解答例(5年度)
形式言語とオートマトン / ページングとTLB / パイプラインと論理回路
形式言語とオートマトン / パイプラインとキャッシュ / スケジューリングとセマフォ
2024年度(このページ・全4問)
形式言語と状態数 / キャッシュとIPC / 連結性と全域木
半分接頭辞と言語クラス / 集合分割の近似アルゴリズム / ページ置換
CPUスケジューリング / 再帰的ソート / 部分語位置の写像と言語クラス
2024年度の出題内容
全4問
同じテーマを出した他大学・他年度
3テーマ
前年度(2023年度)との違い
- 大問数
- 2023年度 4問 → 2024年度 4問
東京大学の公式過去問
- 公開年度範囲
- 2022〜2026
- 公式の解答例
- 非公開(問題冊子のみ)
- 院試hubの最終確認
- 2026-08-13