見出し画像

基本情報技術者試験に合格した話

0.はじめに

初めまして!まずはこの記事を開いて頂きありがとうございます。
筆者は国語力が低く、語彙にも乏しいため非常に拙い文章となっていますが、この先も読んでいただけると幸いです。
本題に移りますが、私は2023年10月に基本情報技術者試験を受験し、A試験B試験共に合格基準点を上回ることができ、合格することができました。
しかし、今回が1回目の受験ではなく2回目の受験です。
本記事では、私がなぜ1回目で不合格になり、その後どのように勉強をして合格に至ったのかを伝えていきたいと思います。


1. 筆者のスペック

  • 偏差値50台の高校卒業→情報系の私立大学に進学(大学2年)

  • 講義でC言語を学び、オリジナルのWebサイトを作った程度

  • AtCoder Rating 193(8回参加、使用言語はPython)

2. 受験した動機

私は高校は普通科に通っており、大学に入学するまでITに関する知識やプログラミング経験が全くありませんでした。どうしようかと悩んでいましたが、資格で同時に網羅的に勉強できるため基本情報の勉強を始めようと決意。また、基本情報に合格すると大学から単位をもらうことができ、図書カードも貰うことができるため。

3. 1回目の受験について

1回目は2022年11月に受験しました。当時は、大学でⅭ言語の講義が始まったばかりでif文やfor文などを学んでいる最中で、AtCoderにも参加しておらずアルゴリズムはちんぷんかんぷんな状態でした。
午前試験は70点で基準をクリアすることができたのですが、午後は52点でアルゴリズムとデータ構造は1割、情報セキュリティは3割と散々な結果に終わってしまいました。
2023年度の試験から試験概要が変わり、当時の午後試験に替わるB試験はアルゴリズムとデータ構造が8割、情報セキュリティが2割と次年度の受験に大きな不安を残すことになります。
不合格だった原因は勉強不足とスケジュールミスです。午前試験から午後試験までは約3週間ほど期間が空いたのですが、午前試験までの期間は午前試験の過去問を解くことに集中しすぎてしまい、午後試験の対策は午前試験が終わってから始めました。そのため、午後の対策が十分にできず不合格になってしまったと考えます。

4. 勉強方法

基本情報や応用情報等のIPA試験では絶対に欠かせない対策が1つあります…
そう!過去問道場です!!
これ無しでは合格できないと言っても過言ではないくらい便利なサイトです。過去10年分以上の過去問を解くことができ、分野ごとの正解率等も記録することができるため、自分の苦手分野を分析することが非常に簡単です。
ここからは、各試験の対策について述べていきたいと思います。

4.1 A試験

A試験は先ほど紹介した過去問道場さんと栢木先生の基本情報技術者教室という書籍にお世話になりました。栢木先生の基本情報技術者教室は、A試験の対策に向いており、ここだけ押さえておけば合格できるといった、広すぎず浅すぎずのよい塩梅で学習のできる良書の1つです。
1回目の受験から少し期間が空いてしまったため、3日間でざっと1周読みました。試験3週間前から過去問道場を利用して、問題演習を進めていきました。抜け落ちている知識があったら、その都度、栢木先生の基本情報技術者教室を読んでもう1度復習したり、Google先生に聞いていました。
受験前までに約問解きました。10月の過去問演習の正解率が74.4%だったため、A試験ではここの正解率が反映されると思っていいでしょう。(1回目の受験時の過去問演習の正解率は67.7%)

4.2 B試験

B試験の対策は…実はサンプル問題を1度解いただけです!(笑)
1回目の受験時に、福嶋先生のうかる! 基本情報技術者 [午後・アルゴリズム編]を使って学習していましたが、こちらは2回目の受験時には全く使いませんでした。1回目でアルゴリズム全然解けていなかったのになぜ715点取れたかというと、AtCoderの影響が大きいと私は考えています。本格的にAtCoderを始めたのは2023年の8月からなのですが、それまでにアルゴ式やAtCoderの過去問を幾つか解き、アルゴリズムの知識を少しずつ学んでいっていました。
プログラミング経験が全くなく、B試験の問題を見ても何が何だかさっぱり分からないという人は「何か言語を学んでコードを書くとよい」というアドバイスをよく見かけますが、メリットデメリットの両方があります。
メリットはトレースの様子を実際にコードを動かして確認することもでき、慣れてくると問題を見れば何をしたいコードなのかがすぐに分かります。デメリットを挙げると、勉強時間を増やさないといけないことや環境構築が大変という点でしょうか…(ブラウザ上で環境構築不要でコードを動かせるサイトもある)。
もしB試験の勉強と一緒に言語を学ぶ場合は、PythonまたはC言語をおすすめします。Pythonは記述が非常に簡単で感覚的にも分かる点が多く、C言語は問題で使われる疑似言語と記述が似ているため知識をそのまま生かせることができます。

5. 試験当日について

私は試験前は何かと緊張してお腹を下してしまうのですが、今回もでした…時間に余裕をもって試験会場に着いていたので、試験開始までにはなんとか回復しました。皆さんも時間には余裕を持って行動しましょう…(笑)
試験の戦略についてですが、私は試験前に時間配分は考えていませんでした。なぜなら、問題の難易度感は回によって異なるため、自分の想定していなかった難易度(難しい問題が多い)だったら、自分の性格だと焦って対応できないと思ったからです。
問題を解きながら時間配分は考えていき、A試験は40分で60問全てに目を通す(答えが怪しいものはチェック。即答できないものは飛ばす)。残り時間で、飛ばした問題や答えの見直しをしました。B試験でもA試験同様に問題に目を通してトレースが複雑で即答できなそうなものは飛ばすという方針で進めていきました。

6. 受験を終えて

無事に合格することができたため今は一安心です。
ですが、基本情報が終わったら次は応用情報!!
2024年4月の上期に応用情報の受験を考えています。応用情報では午後試験が記述になるため、不安な部分もありますが、基本情報での反省を生かし、対策を進めていきたいと思います。

7. 最後に

本記事を最後までご覧いただき誠にありがとうございます。
noteで記事を書くのは今回が初めてで、見づらかった部分もあると思います。ですが、こうして記事を執筆することが非常に楽しかったため、今後も合格体験記や自身の体験をnoteにまとめていきたいと思っています。

2023年から新制度の試験となって徐々に情報も出始めていますが、これから基本情報を受験する人が本記事を参考にしていただけたら、非常に嬉しいです。次回の合格体験記は2024年の6月に投稿できるよう、応用情報の勉強頑張ります(笑)


この記事が気に入ったらサポートをしてみませんか?