どうも脱線おじさんです。
令和5年以降、新方式の基本情報技術者試験に1発合格できたので
その経験を元に、新方式になってから話題の科目Bについてまとめました!

スライドのようなお悩みを当記事で解決できると思います!
全体的な試験対策は下記の記事にもまとめてますので、併せてご覧ください!
それでは本題に触れてまいります。
動画版
動画で流し見したい方はこちらをどうぞ~
目次

本記事の目次です。
自己紹介

私の自己紹介はスライドの通り。
詳細は下記の記事にてまとめてあります。
① どれくらい勉強した?

私は約30時間勉強しました。セキュリティは一応、対策本を買ったんですが1周読んでおさらいしただけなんで、ほぼ無勉です。
セキュリティの前提知識が無い場合は、科目B単体でも50時間以上は勉強が必要だと思いました。
科目AとBの勉強の割合は3:7といった感じで
科目Aは慣れてきたら毎日40-80問ほど解いて、残りは科目B対策を優先して取り組みました。
主に使用した教材は、公式過去問+サンプル問題とYoutubeの解説動画、予想問題集2冊とセキュリティ対策本1冊になります。
特に公式過去問+サンプル問題と予想問題集1冊は最低限でも取り組まないとマズイと思いました。
② 難問も5分で解けないとダメ?

「こんな問題、5分じゃ無理でしょ。。」という不安の声をよく聞きますね。。
結論、本番の試験で難問は解けなくても合格はできます。
割合としては2-3問ほど難問、応用問題が出てきますね。
ただし、そのうち1問は採点対象外の問題である可能性があります。今後の新論点として出題するかどうか試験団体側が正解率の調査用に出題してるのかと思いますが。。
配点がどうなってるのかはブラックボックスですけど、難問にムキになると時間が足りないです。
そこは割り切って解答までたどり着けた基本問題の見直しを優先して堅実に立ち回った方がコスパが良いです。
ということで基本問題を80~90%、難問といわれる応用問題は半分あてるくらいの気持ちで試験に臨んだ方が良いかなと思います。
③ どこまで勉強したら合格圏内?

公式過去問とサンプル問題、予想問題集2冊以上のやり込みで合格圏内に入ると思います。
プログラミング経験者は予想問題集は1冊でも合格圏内には入ると思います。確実に合格したいならば経験者であっても2冊は用意した方がいいとは思いますが。
科目B対策では利用者の多いトレーニングブックは応用問題が本試験より難しい、あるいは本試験の難問と同等クラスに意地悪なので、これは半分以上解けたら問題ないと思います。
そういった意味を込めて、スライド上では赤線ほ問題集の真ん中に引いてます笑
④ 問題集は何周したほうがいい?

問題集は最低でも2周以上、苦手なところは3周以上やっておくといいです。
注意したいのは適度に間隔を空けて周回することです。
目安としては「ちょっと忘れた頃に復習する」です。
なんでそんなことすんのって話ですけど、わざと忘れかかった頃に復習することで
否が応でも「暗記ではなく理論からの解答導出」をしていくことができるからです。
一般的な資格試験は暗記でごまかせる内容が多いですが、
それとは違って基本情報技術者のアルゴリズム問題を筆頭に計算やプログラミングをする問題は暗記ではなく式の導出の速度・精度が大事です。
2周目以降は暗記要素を薄めた状態で復習することで、理論理解ができてるかどうかを浮き彫りにできるということですね。
実際に私は予想問題集は2冊購入していて、交互に使用することで
問題パターンの範囲を広げつつ間隔を空けて学習するという戦略を取りました。
⑤ トレースはやるべき?

トレースは原則、紙面上でやるべきです。
試験でもメモ用紙を渡されるので、それを想定して練習した方がいいですね。
日商簿記の勉強や帳簿を付けるときに似てて、トレースしなくても解ける内容でも極力何回もトレースして問題演習はした方がいいです。
どうしてかというと、数をこなしてトレースの速度・精度を上げる必要があるからです。
速度はもちろんですが、試験時間が切羽詰まってくるとケアレスミスをしてくだらない失点をしてしまう可能性があるので、精度も上げるのが非常に大事です。簿記の試験にここは本当に似てる。。
ただし、本試験ではトレースをするのは限定していく必要があります。
くそ真面目に全部トレースしてたら時間切れになりますからね。。
トレースはあくまで自分が分かるように書いていけばよくて、参考書の解説みたいに綺麗にかかなくても良いです。
例えば私は変数の頭文字だけトレース表の項目に書いて省略した書き方をして解いてました。
どこまで簡略化してトレースするかは自分自身と相談ですね。
⑥ 時短で解けるコツはある?

時間短縮のコツとしては具体的には3点あって
共通してるのは「1から考えるのは最終手段」ということです。
上から順番に触れていきます。
①トレースは必要最小限に抑える
まず1点目に、どの出題でも言えるのが「トレースは必要最小限に抑える」ということです。
ありえない選択肢を排除してからトレースをしていく感じですね。
勿論、トレースしないとケアレスミスをしそうと感じたところまで横着して
トレースを省略してしまうのは本末転倒なので無理のない範囲で省略した方がいいです。
②「出題文やコード」と「頻出パターン」を脳内照合
2点目は「出題文やコード」と「頻出パターン」を脳内照合して、
可能な限り既存の知識で解法を特定することです。
1番マッチしている類似パターンを脳内で思い越して、それを念頭に解いていくと効率的です。
③数値やビットの導出法は暗記しておく
3点目は数値やビットの導出法は暗記しておくことです。
例えば中央値は真ん中の数値、あるいは真ん中の2つの平均
どちらかの2パターンですよね。
こういった2パターンに分かれる場合なんかは問題の選択肢の対象になりがちなので、
予め抑えておけばトラップに気づけるので事故率が下がります。
ビットの演算も同様で、特定のビットの取り出し・反転をする場合はANDとORどちらを使用するかを事前に把握しておくと良いです。
こういった事前に暗記しておけば済むパターンについての暗記は私も肯定的に考えてます。
逆に1問5分程度しか確保できない試験で、こういったパターン全てを検証していくのは現実的ではないのは明らかです。
ということで極論、1から考えるのは最終手段です。全く考えないで暗記で済ますのはタブーですが、暗記で済むところと理解が必要なところの区別はした方が効率的です。
⑦ 実際にプログラムを動かすべき?

実際にプログラミングを動かすのが、王道ではあります。ただし時間はかかります。
プログラミング経験が有るに越したことはないが、試験と実務は別ゲーと考えた方がいいです。
トレースが良い例ですね。デバッグツールなどで出力を見て機械にトレースさせた方が早いので、実務上は紙面上でバカ丁寧にトレースなんてやる訳ないです笑
脳内デバッグツールを開発できるかどうかが試されてる試験なんで
プログラミング経験がある=合格できる といった単純な話ではないです。
メリットは勿論あって、ループや変数などの処理の意義が分かります。
試験対策だけでプログラミングの実践をしてないと、頭ごなしの学習になってしまうので何のために必要な処理なのかまでは理解できない項目も出てきます。
試験に合格するだけが目標ならば実践はコスパが悪いので、不要ではありますが
基本情報技術者試験の勉強を通して、今後に業務の自動化・効率化を実現していくといった目標があるならば科目B対策をキッカケに実践をしていくことをおススメします。
⑧ プログラミング資格あると有利?

プログラミング資格があれば、とても有利だと思いました。
私はJavaやPythonの資格を持っていますが
ループ、if文、配列などは既存の知識で解けたので無勉に近いです。
これらで対策していたのは、せいぜい擬似言語としての表現や仕様を把握するくらいです。
反対に苦戦したのはビット演算、数式表現、2分木などです。
こういった内容はプログラミング資格ではメソッドや関数などで済ませていくことが多くて、
1からコード化して考えていくことは少なかったので対策に時間がかかりました。
またオブジェクト指向プログラミングでは切っても切り離せないクラス継承、ラムダ式などは科目Bには今のところ出題される様子はないので無関係でした。
プログラミングを実践していくならば必然的に学びますが、科目B対策という観点では不要でしたね。
以上を踏まえて、科目Bの範囲と難易度を考えると
Java Silverよりは易しくて、Java Bronzeと同等あるいは少し難しいかな。。
といった印象です。
⑨ 試験対策本だけで解ける?

プログラミング経験なしで、試験対策本だけで勉強しても合格は可能です。
試験は「プログラミング+数学」の要素が混ざったIQテストみたいな物なんで
素養が無くてもパターンを掴めば経験の有無に関係なく合格できます。
とりあえず資格合格だけしたいってパターンでも突破は可能ですね。
ただし何も考えずとにかく暗記で逃げ切るという資格試験あるあるのやり方は全く通じないです。
ただしプログラミング未経験の場合は、よっぽど適性が高くない限り2冊以上は問題集をやり込んだ方がいいかなと思います。
⑩ 見たことない出題ってある?

見たことのない出題はあります。
2-3問は出題されると思ってください。
それ以上に「初見の問題が出た」と感じた場合は
アルゴリズムの本質理解が不足してる可能性が高いので、別の原因があると思った方がいいです。
これに関しては問題集1冊だけの勉強で、抑えてるパターンが狭い場合はこうなりがちです。
また、そういった難問が解けなくても合格ラインには到達可能です。
セキュリティと基本問題を8割以上抑えていけば、どうにかなるので誤差ですね。
見たことのない問題は半分解けたらラッキー程度に考えた方が落ち着いて解答できると思います。
2-3問の見たことのない問題以外にも、「これも見たことないぞ?」
と慌てそうになる問題も混ざってますが、そいつらは問題を紐解いていくと
頻出のアルゴリズムの複合問題になってるだけだったりします。
本質を理解していれば解答可能な内容なので、出題文やコードに圧倒されずに冷静に対処していけば困ることはないです。
この辺は本質が理解できてるかできてないかで、ふるいにかけてるので試験としてのバランスは新方式になってから絶妙だと思います。考えてる人はマジで頭いいと思う。。
+ セキュリティ対策は?

セキュリティ対策はスライドの通りで、2項目のよくある質問を載せました。
上から順番に触れていきます。
①情報セキュリティマネジメントの問題も解くべき?
まず1点目、情報セキュリティマネジメントの問題は解くべきですね。
現状では最適な試験対策です。試験ではA4用紙1枚程度の長文×4問の出題なので
情報セキュリティマネジメントの過去問ほど難しくはないので安心してください。
主に長文度合いからくる形式が違ってますが、論点と引っ掛け方のクセに変化はないので
過去問を通してセキュリティの考え方、問題の解き方といったポイントを掴むべきです。
②得点するコツってある?
2点目、得点するコツはあります。
1つめは解答を誘導してる文章を見抜く事です。
しっかりと勉強してると、文章を読んでる途中で「サイバー攻撃」「脆弱性」を彷彿とさせる箇所が分かります。そこに着目して解けば時短かつ確実に解けますね。
2つめは登場人物・サービスの関係などをメモしておく事です。
例えばA社は委託、B社は受託といったように契約関係をメモしておくことで、
ケアレスミス防止ができ、セキュリティ上の責任分界点はどこになるのか
慌てずに整理して解答ができます。
合格後は…
合格証書が簡易書留で送付されます。

・更にステップアップして関連資格に挑戦したい
上記のような素晴らしい向上意識をお持ちの方もいらっしゃると思います。
そういった方々には以下の関連資格への挑戦をおススメ致します。
資格名 | 特徴 |
応用情報技術者 | 基本情報からすぐに挑めば午前問題は楽勝! |
Java Silver | オブジェクト指向プログラミング言語の定番! |
Python3エンジニア認定基礎試験 | オブジェクト指向プログラミングの言語の定番! |
VBAエキスパート | Excelはどこでも使うので便利なプログラミング言語! |
CCNA | ネットワークエンジニアの登竜門。セットで揃えたい! |
LPIC Lv1 | サーバエンジニアの入門資格。セットで揃えたい! |

また上図を目安に、他カテゴリの資格へと進出を検討するのも良いでしょう!
以上になります。読了ありがとうございました。
読者の皆様の合格をお祈り申し上げます!!