メインコンテンツへスキップ
情報セキュリティスペシャリスト2010年度 秋期午前I2

2010年度 秋期 情報セキュリティスペシャリスト 午前I2

難度標準

a, b, c, dの4文字からなるメッセージを符号化してビット列にする方法として表のア〜エの4通りを考えた。この表は a,b,c,dの各1文字を符号化するときのビット列を表している。メッセージ中での a, b, c, dの出現頻度は,それぞれ 50%, 30%, 10%, 10%であることが分かっている。符号化されたビット列から元のメッセージが一意に復号可能であって、ビット列の長さが最も短くなるものはどれか。

選択肢

a:0, b:1, c:00, d:11
a:0, b:01, c:10, d:11
a:0, b:10, c:110, d:111
a:00, b:01, c:10, d:11

解説

結論 → 詳細 → 補足 の 3 層構成

展開
結論Layer 1

この問題は、情報理論における効率的な符号化、特にハフマン符号化の考え方に基づいています。ハフマン符号化では、出現頻度の高い文字には短いビット列を、出現頻度の低い文字には長いビット列を割り当てることで、全体のビット列の長さを最小化します。これにより、平均符号長を短くすることができます。

詳細Layer 2

選択肢ウが正解となるのは、出現頻度が高いa(50%)に最も短いビット列'0'を、次に高いb(30%)に'10'を、低いc(10%)とd(10%)にそれぞれ'110'と'111'を割り当てているため、全体のビット列の長さが最も短くなると期待されるからです。

補足Layer 3

他の選択肢が不適切な理由を説明します。

アは、cとdにそれぞれ'00'と'11'を割り当てていますが、a(50%)に'0'、b(30%)に'1'を割り当てた場合、cやdのような出現頻度の低い文字が、aやbよりも長いコードを持つことが期待されるため、効率が悪いです。

イは、aに'0'、bに'01'を割り当てており、aとbのコードが接頭辞関係(プレフィックスフリー)になっていないため、一意に復号できません。例えば、'0'というビット列はaにもbの先頭にもなりうるため、問題文の「一意に復号可能」という条件を満たしません。

エは、aに'00'、bに'01'を割り当てており、aとbのコードの長さが同じで、cとdに割り当てられたコードよりも短いですが、aの出現頻度が50%であることを考えると、より短いコードを割り当てるべきであり、効率が悪いです。

この解説は?
この解説は AI 生成です(詳細)

解説テキストは Google Gemini に IPA 公式の問題文・公式解答を入力して生成しました。 人間によるレビューを行ったものと、未レビューのものが混在します。

AI は事実誤認・選択肢の取り違え・最新法令の反映漏れ等を含む可能性があります。 重要な判断は必ず IPA 公式 PDF または最新の参考書でご確認ください。

解説の検証プロセス・誤り報告フローは 運営透明性レポートで公開しています。

※ AI 生成の解説は誤りを含む可能性があります。重要な判断は IPA 公式資料でご確認ください。

最終更新:

分野「基礎理論」の学習ポイント

この問題の理解を「分野全体の力」に広げるための足がかり

何が問われるか
2進数・論理演算・確率・統計など、IT全般の土台となる数学・離散構造の理解度。
学習の進め方
公式の暗記ではなく、ビット表現や真理値表を「手で書ける」状態を作る。例題を3パターン以上手で解いて感覚化する。
関連キーワード
2進数論理演算シフト演算誤差確率情報量
この分野の問題をもっと解く
AI コパイロット

この問題を AI と深掘りする

用語解説・選択肢分析・類題生成をその場で対話。クイズモードでは解答→解説がゼロ遷移。

クイズモードで開く

共有

X でシェアLINE

ショート動画

関連する問題

基礎理論 の他の問題