東京大学大学院情報理工学系研究科コンピュータ科学専攻合格体験記(2020年度)

早稲田大学理工学術院情報理工学科/情報理工・情報通信専攻 専門科目対策(院試)

 

はじめに

専門科目の試験時間は 150 分です.科目内容は以下の通り.全問必答です. 
  1. 情報基礎:プログラミング、情報数学、離散数学
  2. 計算機システム :オペレーティングシステム、コンピュータアーキテクチャ
  3. 回路理論・論理回路:回路理論、電子回路、論理回路
  4. 情報通信ネットワーク:情報ネットワーク 

 これらについて参考書と勉強内容について書いていこうと思います.はじめに伝えておくとネットワーク以外は毎年気まぐれのように傾向が変わります.そのため広く浅く学んでおく必要があります.

 また過去問は学校の入学センターに行っても過去3年分しかありません.そのため内部の先輩に研究室訪問の際にさらに過去の分をもらっておきましょう.

 因みに学校説明会に行くと研究室訪問は絶対行ってくださいと言われますが,私はいかなくても(本当は3回メールを送ったにも関わらず返信が来なかったので私は悪くない←)合格できました.

 それでは各教科について見ていきましょう.

情報基礎

プログラミング

 プログラミングはアルゴリズム的な立ち位置です.プログラミング言語C言語が出題されるので基本文法を確認しておきましょう.参考書は好きなものを使えばよいと思いますが,「やさしいC」をやっておけば十分かと思います.

 

やさしいC 第5版 (「やさしい」シリーズ)
 

 アルゴリズム東京大学対策でアルゴリズムイントロダクションを使用していましたが, そこまで早稲田では要求されないのでデータ構造とアルゴリズムだけで充分です.

 

データ構造とアルゴリズム (新・情報 通信システム工学)

データ構造とアルゴリズム (新・情報 通信システム工学)

 

  またこれでも足りないと感じた方はどこかの大学の授業資料にて勉強するのが良いです.オーダーの話やアルゴリズムの例外などは授業資料の方が詳しいことが多いです.

 私は上智大学の教授 宮本裕一郎先生の授業資料を使用しました.年によってサイトが異なるので自身で調べてみてください.

 アルゴリズムはソーティングやスタック,探索アルゴリズム動的計画法が主に問われています.基本穴埋めからそのアルゴリズムについてのオーダーや動作方法について求める問題が来ます.ここは落とさず点を取りましょう.

情報数学

 情報数学はエントロピーが主に問われます.ハフマン符号も対策しておけば安心でしょう.情報数学は出る年よりも出ない年の方が多いです.基本的に情報数学が出ても難しくないので点取り問題です.使った参考書はちくま学芸文庫の「情報理論」です.

 

情報理論 Math&Science (ちくま学芸文庫)

情報理論 Math&Science (ちくま学芸文庫)

 

  わかりやすくまとまってるのでおすすめです.あとは過去問を解いてネットに載ってるような問題を数個解けば十分です.

離散数学

 離散数学は通常の離散数学形式言語を内包しているので注意が必要です.私自身,東京大学の対策のために勉強していたので早稲田のために特別な勉強はしていませんが,結構深くまで聞かれる印象です.(特に形式言語

 一応参考書を列挙しておきます.離散数学は「離散数学への招待」と「やさしく学べる離散数学」です.

 

やさしく学べる離散数学

やさしく学べる離散数学

 
離散数学への招待・上

離散数学への招待・上

 
離散数学への招待・下

離散数学への招待・下

 

 早稲田では「離散数学への招待」程対策する必要はないと思います.「やさしく学べる離散数学」で勉強して解けるようになれば十分な気がします.

 形式言語は3つの参考書を使いましたがここでは2つのみにします.(残りの一つは全く役に立たないと思うので)「オートマトン・言語理論の基礎」と「計算理論の基礎1.オートマトンと言語」がおすすめです.

オートマトン・言語理論の基礎

オートマトン・言語理論の基礎

 
計算理論の基礎 [原著第2版] 1.オートマトンと言語

計算理論の基礎 [原著第2版] 1.オートマトンと言語

 

 オートマトン構築問題に関しては「オートマトン・言語理論の基礎」で問題演習を重ねるのが良いです.またチューリングまでまとめてあるので読む価値ありです.その代わり証明系が一切ないのでそこは「計算理論の基礎」で知識を補強しましょう.また「計算理論の基礎」はかなりわかりやすく書いてあるので一冊やり終わった後に読むと感動します.

 ちなみに定義に用いる記号やそもそもの定義自体異なる場合がありますが,基本的に「計算理論の基礎」の記法に合わせましょう.その方がスタンダードです.

計算機システム

 OSやアーキテクチャは非常に対策しにくいです.通常の勉強であれば勉強しやすいのですが重箱の隅をつつかれやすいので早稲田のような点を取らせない問題としては最適なわけです.なのでちゃんと点を取りたい方はここをしっかりやって本番で解けなくても悲観せず,とれるものから取っていきましょう.

オペレーティングシステム

 OSに関しては,スケジューリング問題やマルチプロセス系が出される印象です.ですが過去4年分しか手に入らなかったので傾向らしい傾向が私もよく掴めていません.

 OSに関して使用した参考書は以下の通りです.

オペレーティングシステム (未来へつなぐ デジタルシリーズ 25)

オペレーティングシステム (未来へつなぐ デジタルシリーズ 25)

 
オペレーティングシステム(第2版) (情報工学レクチャーシリーズ)

オペレーティングシステム(第2版) (情報工学レクチャーシリーズ)

 
岩波講座 ソフトウェア科学〈〔環境〕6〉オペレーティングシステム

岩波講座 ソフトウェア科学〈〔環境〕6〉オペレーティングシステム

 

  この3冊の中で一番使ったのが「情報工学レクチャーシリーズ」です.この本だけでマルチプロセスやスケジューリング問題は大丈夫だと思います.ただ私が受けた年に「岩波講座 ソフトウェア科学」でしか扱われていないアルゴリズムが問われたので,岩波講座のような本を読む必要もありそうです.

 岩波講座は分厚くて読む気が失せそうですが結構わかりやすいのでお勧めではあります.

コンピュータアーキテクチャ

 コンピュータアーキテクチャでよく問われるのはこれ!というものがありません.仮想記憶も出題されるしディスク管理も出題されたし並列処理や機械語も出たし...ここに関しては本1冊ちゃんと覚える必要がありそうです.

 お勧めなのは「電子情報通信レクチャーシリーズ コンピュータアーキテクチャ」です.

コンピュータアーキテクチャ (電子情報通信レクチャーシリーズ)

コンピュータアーキテクチャ (電子情報通信レクチャーシリーズ)

 

 必要なことがコンパクトにまとまっています.これさえやっておけば間違いなし.ただ問題が少ないです.早稲田も過去問が限られているので東京大学の電子情報学専攻の過去問なども解きながら対策するとよいでしょう.

 仮想記憶に関してですが様々なタイプの構造やTLB,ページテーブル,キャッシュと数種類が存在するのでこんがらがってしまいます.ちゃんと整理して視覚的に理解できるようなまとめノートを作ることが大切です.

回路基礎・論理回路

回路基礎

 回路基礎に関してはあまり助言できないです.理由としては本番の回路基礎に関しては何も書けず白紙で提出したためです.めっちゃ苦手です.

 私が対策した内容は主にオペアンプです.過去問ではオペアンプ伝達関数ばかりだったのでそれしかやっていなかったのですが,回路基礎ということもあり電子回路もちゃんと勉強しないと点は取れなさそうです.

 一応参考書です.

 

オペアンプの基礎マスター (基礎マスターシリーズ)

オペアンプの基礎マスター (基礎マスターシリーズ)

 
現場で役立つオペアンプ回路- サーボ系を中心として -

現場で役立つオペアンプ回路- サーボ系を中心として -

 

 ただほとんど出なかったですね...(笑).伝達関数に関しては「現場で役立つオペアンプ回路」が詳しいです.

 電子回路についてはこのサイトの方が詳しそうです.

poland-it-blog.com

論理回路

 論理回路東京大学の院試対策で勉強していたので早稲田用ではありませんが以下の参考書をやっているだけで他に対策することはありませんでした.

論理回路入門

論理回路入門

 

 毎年傾向が違うので何とも言えませんが順序回路まで一旦やったらあとは組み合わせ回路~カウンタあたりまでを重点的にやれば大丈夫な気がします.

 static-1-hazardなどマイナーなものも聞かれるのでそこらへんは大学の授業スライドなどで確認するとよいでしょう.東京大学 論理回路と調べるといい授業スライドが出てきます.

情報通信ネットワーク

情報ネットワーク

情報ネットワークの範囲はかなり勉強したので当日救われました.この範囲だけは傾向が崩れないのでちゃんと勉強しておきましょう.

参考書は2つあり,主に使っていたのはマスタリングTCP/IPの方です.

マスタリングTCP/IP 入門編 第5版

マスタリングTCP/IP 入門編 第5版

 
TCP/IPをめぐる88問88答

TCP/IPをめぐる88問88答

 

 学んでおくべきことは

  • OSI参照モデルと各層の名前とフレームの呼び方と機器の対応
  • TCP/IPのデータの流れ
  • プロトコルの名前と何をするか
  • TCP/UDPのポート番号
  • パケットのヘッダの読み方
  • RIPとOSPFの内容と差異
  • スロースタートと輻輳回避,輻輳制御系
  • ハッシュと暗号化
  • 多重アクセスプロトコルCSMA/CD方式,CSMA/CA方式)の動作と違い.

これくらいでしょうか.これらを押さえておけば大体ここで点は取れると思います.試験の直前まで用語の暗記と動作を確認しておきましょう.

終わりに

 早稲田の専門科目は予想では7割あれば安心して合格できるラインだと思います.私のように傾向が大幅に崩れた年は6割でも合格できる可能性があるので専門で解けなかった...と思っても気を落とさず面接に行ってください.周りを見てみると3割くらいの人が面接に来てなかったので非常にもったいないなと感じたのを覚えています.

 私は東京大学の併願先として受験をしましたが,早稲田は早稲田の癖がある問題で結構苦労しました.東京大学が「与えられた問題をあなたの地頭と経験で解けますか?」問題なのに対し,早稲田大学は「このマニアックな知識知ってますか?またこれだけ広い範囲勉強してきていますか?」問題なので早稲田に関しては知識量の重要さがわかると思います.

 ぜひみなさんもこのブログを参考にして自分の行きたい大学に合格していただければ幸いです. 頑張って.