Michi's Tech Blog

一人前のWebエンジニアを目指して

【基本情報攻略日記】 - 第2回 受験の感想と効率的な勉強法 -

こんにちは!
スマレジ テックファームのMichiです!

前回の記事でご報告しました通り、このたび無事に基本情報技術者試験に合格しましたので、今回はその感想とこれから受験する人に向けての効率的な勉強法を書いていこうと思います。

受験の感想

受験前

試験勉強はちょうど合格の1か月前から始めました。

インプットには次の2つの教材を使用しました。

www.youtube.com

item.rakuten.co.jp

使い方は次のように実施しました。

  1. 最初にYotTubeで概要を理解する
  2. 本で細かいところまで網羅する
  3. 本の章末に付いている練習問題を解いてみる

8月は出社する機会が多かったので、YouTube動画を通勤中の電車内で視聴 → 休日など家にいる時間は本を読み進めるという流れでした。

過去問に真剣に取り組んだのは受験本番の3日前くらいからでした。(後でも言いますが、過去問はもっと早くからやっておいた方がいいです。)

あまり過去問を回す時間がなかったので、まともにやったものはほぼ下記の2つだけでした。

ただし、この2つの過去問は2週し、完璧に解ける状態にはしておきました。

ここまでの勉強時間は、平均1.5時間/日 × 1か月 = 45時間程度だったと思います。

試験前日の感触としては、「科目Aは何とかなるだろうけど、科目B(特にアルゴリズム)は自信がない」といった感じでした。

試験本番

※個別の設問の内容については規則で口外できないので、あしからずご了承ください。

科目A

科目Aは90分で60問を解く形式で、時間的には5分ほど余りました。
設問は勉強中に演習した問題(及びその類似問題)が多く、そこまで戸惑いはありませんでした。

科目B

科目Bは110分でアルゴリズム16問、情報セキュリティ4問の合計20問を解く形式です。

私は後半の情報セキュリティから先に解きました。理由は頭がまだ疲れていないうちに、確実に点数が取れる情報セキュリティの分野で得点しておきたかったからです。(結果的にこれは正解でした)

アルゴリズム問題は、見たことがあるような形式もあれば、初見のものもあり少し戸惑いました。特に、うち2問は完全にお手上げで、時間的な余裕がなかったこともあり適当に選択肢から回答しました。

試験時間は上記の2問をすっ飛ばしたうえでカツカツだったので、実質時間内に解ききれませんでした。

受験後

受験後すぐに結果が発表されました。

  • 科目A ... 720/1000 点
  • 科目B ... 715/1000 点

率直な感想としては、「科目Aはもっと取れたと思っていたし、科目Bは思ったより結果が良かった」です。結果的にA/Bどちらもほぼ同じ点数というのは意外でした。

これはIRT方式で、難しい問題の配点は高く、逆に簡単な問題の配点は低く算出されることが影響しているのかもしれません。

何はともあれ、無事1回目の受験で基本情報技術者試験に合格することができました。

これから勉強をはじめるなら

これから基本情報技術者試験を受ける方に向けて、効率の良い勉強方法を考えてみたいと思います。

なお、ここではなるべく最速で試験に合格することだけを考えるので、IT職として必要な知識を身につけられるかということについては度外視します。

勉強方法

まず、教材としては次の3つを使用します。

www.youtube.com

www.fe-siken.com

books.rakuten.co.jp

ここで先ほど挙げた、「『栢木先生の基本情報技術者教室』は?」と思われた方もいるかもしれません。

実際に一通り読破した身としては、この類の参考書は必要ないかなと思いました。

理由は次の2つです。

  • YouTubeの動画が網羅的かつわかりやすく説明してくれているので、わざわざ本で学びなおす必要がない
  • インプットよりアウトプット(過去問演習)に時間を割きたい

どうしてもという方は本を買ってもよいですが、全部読まずに辞書的な使い方に留めるのがよいと思います。

勉強のやり方としては次の順番で行います。

  1. YouTubeでインプット
  2. 過去問道場でアウトプット
  3. パーフェクトラーニングで本番形式に慣れる

ここで気をつけるべきなのは、1と2は同時並行で進めることです。

なぜなら、1を全部終わらせてから2をやろうと思っても、その頃にはせっかくインプットした内容を忘れているからです。

なので、『YouTubeでひとつの単元を視聴する → その範囲の過去問を解く』のサイクルを遅くても3日以内でやりたいところです。

3については試験本番の1週間前くらいから始めましょう。 やるときは時間を測って、試験本番の時間配分に慣れておきましょう。

勉強時間

巷では、基本情報合格までに必要な勉強時間は以下のとおりだと言われています。

  • IT業界で働いているなど、すでに基本的な知識を有している人 ... 50時間
  • ITにあまり馴染みがなく、基本的な知識がない人 ... 200時間

自分の場合はWebエンジニア歴1年で一つ目の条件にあてはまりましたが、だいたい45時間程度で合格できたので、この情報は体感あっていると思います。

ただし、自分は大学は文系学部(法学部)を卒業しており、12年間まともに数学に触れていないというハンデはありました。実際に勉強時間のうちの少くなくない部分を、高校数学の思い出しに費やしたという面があります。

理系学部、または工業系の高専を卒業されている方などは、数学の部分でアドバンテージが取れるので、実際はもっと少ない時間(30時間程度)で合格できるのではないかと思います。

試験前日

試験前日はちゃんと寝ましょう。(大真面目に言っています)

計算問題やアルゴリズムで頭を使うので、睡眠不足は思考力の低下を引き起こし、ケアレスミスが発生します。

前日に詰め込んだところでたかが知れているので、潔く諦めて次の日にすっきりとした頭で受験できるほうが得策です。

試験本番

科目A

特にいうことはないです。出題された問題から順に解いていきましょう。

十分に過去問演習を行なっていれば、科目Aで時間が足りなくなるということはないと思います。

科目B

こちらは少し解き方に工夫が必要です。

まず、後半の情報セキュリティ分野4問から先に解きます。理由は、

  • アルゴリズム問題で頭がまだ疲れていないうちに、確実に情報セキュリティ分野で点を取りたい
  • 科目Bは時間が足りなくなりがちなので、後半の焦った状態で情報セキュリティ問題を解くとミスする可能性がある

からです。

情報セキュリティ分野は基本的に、落ち着いて問題を読むことさえできれば全問正解できます。ここで4問すべてに正解しておけば、残りのアルゴリズムでは8/16問正解すれば科目Bに合格でき*1、この後がだいぶ楽になります。

アルゴリズム問題では過去問やサンプル問題の傾向からして、基本情報受験者レベルの知識では通常解けないような設問が1〜2問出題されます。(数学的知識が必要な問題やクイックソートの実装など)

そのような問題を長時間考えても仕方ないので、この場合は適当に選択肢から回答して次の問題へ行きましょう。どうせほとんどの人は解けない問題なので、落としても問題ありません。

それよりも大事なのは、確実に解けるような問題をミスなく、なるべく早く解くことです。

そのためにも、過去問演習で多くの問題にあたり、解答のパターンを知っておくことが大事です。

まとめ

基本情報技術者試験を受験した体験談と、そこから得た効率的な勉強法について書きました。

余談ですが、「応用情報は基本情報を取った後にすぐ受験した方がよい」と聞いたので調べてみたら、10月試験の申し込みはとっくに終わっていました...笑

次は来年の4月になるらしいですが、どうしましょうか。

*1:IRT方式なので実際には100%合格できるとは限らないが、目安としてこう書いています