基本情報技術者試験　午後試験対策

# はじめに
本記事では午後試験に特化した対策をお伝えします。
午前対策は再現性がなく、また本番も運に助けられた部分が多かったため割愛させていただきます。

# 午後対策のアドバイス
1. FEは回を追うごとに難化している印象で、過去問も少ないです。そのため市販の参考書だけでは本質理解が意外と養われない。ふっくゼミはその強化におすすめ！
1. 基本アルゴリズムを自分で書けるレベルまで理解しよう！
1. 問題テーマを整理して、それぞれの理解度をチェックする！
1. 色んな問題を解く！そして一度解いた問題は時間を置く！記憶に頼らない！

# 前提条件
　私ルキはSIer新卒一年目。プログラミング経験1年半ほどあり(ブランク5年程)。地頭は大してよくありません。浪人経験もあります。5月2週目くらいから本気で勉強し始めました。当初は合格しても大した一時金ももらえないため、やる気はなかったです。しかしキャリアを真剣に考え徐々に勉強モチベを上げていきました。
  
# 試験結果

![スクリーンショット 2024-10-19 000254.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3780724/098a14fc-6429-eb02-8e45-a3d80b99d21f.png)

# 勉強内容
### 勉強時間概算
* 隙間時間:15時間(午前)
* 平日休日:4時間×50日(午後)

Xでの受験者の所感や、自身が体験した参考書や過去問とのレベル差から**回を追うごとに難化している**考えます。
そのため、**本質理解**が重要になります。下記の順番で勉強するのは今後アルゴリズムを理解して、プログラミングを学びたい！と思う方にはお勧めだと考えます。

### 勉強方法
* 後述の勉強順番に従って学習を進行
* 脱線おじさんの独学記でモチベ維持
https://dassen-ozisan.com/kihonn2syuukann
* 問題テーマを整理し、苦手分野を把握
 ![スクリーンショット 2024-10-28 193835.png](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3780724/5758ac70-851b-358e-d1d8-f0e50709594a.png)


### 勉強順番

1 . ふっくゼミ アルゴリズム補講基本編
     https://xn--tpto73d.jp/mobile/movie/
     
目的：**基礎固めと少し応用力つける**

<div style="display: flex; align-items: center;">
  <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3780724/254047bb-7163-1df4-88f2-59ecb6d623ac.png" alt="代替テキスト" width="300" style="margin-right: 20px;">
</div>

　基本アルゴリズムを理解しました。当初はお金をかけずに受かりたい！という気持ちもあり、本メディアを使用しました。トランプを用いて具体的にソートの挙動をイメージして学びました。最終的には擬似言語をベースにゼロから自分でアルゴリズムを書けるように思考トレーニングをしました。正直基本編だけでもかなりのボリューム感です。これを完璧に理解できれば相当な基礎力がついてると思います。私は7割くらいの理解度で次に進みました。
<hr>
2 . うかる！福嶋先生の集中ゼミ　基本情報技術者科目B・アルゴリズム

目的：**問題形式慣れと、考えて実際に正答を出す練習**

<div style="display: flex; align-items: center;">
  <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3780724/6c3a1fe0-285d-218a-28fa-1a402775a2b5.jpeg" alt="代替テキスト" width="200" style="margin-right: 20px;">
</div>
　1は思考力は鍛えられるものの、問題形式は古いです。そのため、この参考書で問題形式に合わせて思考力を発揮できるように強化します！
<hr>

3 . 基本情報技術者【科目B】アルゴリズム×擬似言語 トレーニングブック
目的：**問題演習、パターン蓄積**
<div style="display: flex; align-items: center;">
  <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3780724/a61e89d1-2f1c-65ec-6634-d5a1df382102.jpeg
" alt="代替テキスト" width="200" style="margin-right: 20px;">
</div>

　問題パターンの蓄積に活用しました。またポインタが理解不足な方にはおすすめです。分かり易い図で考え方が説明されています。同じ問題を解いてばかりだと記憶に知らず知らずのうちに頼っている可能性が高いです。また問題のレベルも高く、本番に近い印象を受けました。
<hr>

4 . かんたん合格 基本情報技術者過去問題集 令和6年度
目的：**本番形式で解く練習、数学的パターンを復習！問題自体は本番より少し易しめ**
<div style="display: flex; align-items: center;">
  <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3780724/f47767fa-233c-e462-90a8-8218bd9f0c05.jpeg
" alt="代替テキスト" width="200" style="margin-right: 20px;">
</div>

　本番形式で時間を計って解いてみましょう。自分の解くスピードや基礎力を把握できます。**早い段階で解くのもおすすめです。** 直前で解くと、本番形式で解きたいのに問題覚えちゃってる現象が発生してしまいます。早めに解いて記憶から一度問題を消すのが結構効果的です。思考力がちゃんとついているかの確認にもなります。
<hr>

5 .【基本情報技術者試験YouTuber】すーさん
目的：**情報セキュリティ対策**

<div style="display: flex; align-items: center;">
  <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3780724/4a4b9ccb-a1fb-277c-601f-c85dabb92868.png
" alt="代替テキスト" width="500" style="margin-right: 20px;">
</div>
　情報セキュリティは4問出題されます。ここを落とすと勿体ないです！4番で何問かセキュリティの問題はありますが、ここで更に理解を強化しましょう。SaaS、PaaS、IaaSや公開鍵暗号方式、デジタル著名などの理解を深められます。これは移動時間などの隙間時間で取り組むのがお勧めです。
<hr>

6 . 実践の鬼：IT学校さとうさん 科目B対策
https://www.youtube.com/watch?v=waAwVXa9y2o&t=165s
目的：**処理能力強化**

<div style="display: flex; align-items: center;">
  <img src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/3780724/6e7b457c-6b9f-bbd9-0f94-40518e50cc26.png
" alt="代替テキスト" width="500" style="margin-right: 20px;">
</div>

　上記の動画は直前期に必ずやりましょう！一つ一つの問題のボリュームが多く、トレース力と集中力の強化に最適です。ここで紹介された問題を歯を食いしばりながら、頭で解けるようになれば本番力がついていると自信を持っていいでしょう。本番試験では緊張感で思考が飛んだり、トレース表を時間的に書く暇がなかったりすることがあります。
<hr>

7 . ふっくゼミ アルゴリズム補講応用編
目的：**テーマ別対策**

　文字列処理や図形回転、画像の拡大縮小等、出題されそうなテーマがあると感じてチェックしておきました。応用情報技術者試験でアルゴリズムを選択することまでを見据えている方であればお勧めできます。ただかなりレベルが高く、私自身はダイクストラで挫折しました。しかしこれをやっておくと、本来捨て問となる問題が「なんかみたことある！」という問題になる可能性があります。完璧には理解していないものの、テーマを把握しておくことで、最後の運命の選択で、「なんとなくこれっぽい」が当たり易くなります。

# 最後に
　基本情報は恐らく実務に活きる資格だと考えます(当方エンジニアではありませんので確証はなし)。本記事を書いたのが、受験から4カ月たったタイミングでした。問題を見てみると意外と忘れており、まずいと思いました(汗)。やはり実務を見据えて勉強することが大事ですね。今後は競技プログラミングを一日一題といていけるように頑張ります。共に頑張っていきましょう！