使用した除数(ハッシュ関数の母数)を求める問題です。ハッシュ値が衝突したということは、入力値(571, 1168, 1566)をそれぞれ除数で割ったときの余りが全て同じになったということです。つまり、これらの数はいずれも同じ除数で割ったときに同じ余りとなる合同数です。これを数学的に表現すると、571 ≡ 1168 (mod X) かつ 1168 ≡ 1566 (mod X) となります。合同数の性質から、差も同じ除数で割ったときの余りが0、すなわち割り切れるはずです。1168 - 571 = 597、1566 - 1168 = 398。したがって、使用された除数Xは、597と398の両方を割り切る数(公約数)でなければなりません。選択肢を順に確認すると、ア: 193は597を割り切りますが398を割り切りません。イ: 197はどちらも割り切りません。ウ: 199は597を割り切れません。エ: 211はどちらも割り切りません。これは問題文の前提と矛盾します。
2018年度 秋期 システム監査技術者 午前I 問9
自然数を除数とした剰余を返すハッシュ関数がある。値がそれぞれ 571, 1168, 1566 である三つのレコードのキー値を入力値としてこのハッシュ関数を施したところ、全てのハッシュ値が衝突した。このとき使用した除数は幾つか。
選択肢
解説
結論 → 詳細 → 補足 の 3 層構成
展開閉じる
解説
結論 → 詳細 → 補足 の 3 層構成
問題文の前提を再確認すると、全てのハッシュ値が衝突したということは、571, 1168, 1566をある数Xで割ったときの余りが全て同じになったということです。この「同じ余り」をmとすると、
571 = q1 * X + m
1168 = q2 * X + m
1566 = q3 * X + m
となります。ここでq1, q2, q3は商です。
この関係から、差をとると
1168 - 571 = (q2 - q1) * X => 597はXで割り切れる
1566 - 1168 = (q3 - q2) * X => 398はXで割り切れる
となります。つまり、Xは597と398の公約数です。
597 = 3 * 199
398 = 2 * 199
よって、597と398の公約数は1, 2, 199, 398です。
自然数を除数としているため、選択肢の中から199が該当します。
ア: 193は597の約数ですが、398の約数ではありません。
イ: 197は597, 398のどちらの約数でもありません。
エ: 211は597, 398のどちらの約数でもありません。
したがって、正解はウです。
この解説は AI 生成です(詳細)
解説テキストは Google Gemini に IPA 公式の問題文・公式解答を入力して生成しました。 人間によるレビューを行ったものと、未レビューのものが混在します。
AI は事実誤認・選択肢の取り違え・最新法令の反映漏れ等を含む可能性があります。 重要な判断は必ず IPA 公式 PDF または最新の参考書でご確認ください。
解説の検証プロセス・誤り報告フローは 運営透明性レポートで公開しています。
分野「データベース」の学習ポイント
この問題の理解を「分野全体の力」に広げるための足がかり
- 何が問われるか
- 正規化・SQL・トランザクション特性(ACID)・同時実行制御・分散DBの基本。
- 学習の進め方
- ER 図 ⇄ 関係スキーマ ⇄ SQL の3者を行き来できるよう演習。3NF までの正規化を手で実行できると強い。
- 関連キーワード
- 正規化SQLACIDトランザクションロックデッドロックER図
この問題を AI と深掘りする
用語解説・選択肢分析・類題生成をその場で対話。クイズモードでは解答→解説がゼロ遷移。
共有
ショート動画
関連する問題
データベース の他の問題
- システム監査技術者2009年度 春期 午前I 問3自然数をキーとするデータを、ハッシュ表を用いて管理する。キーxのハッシュ関数h(x)を h(x) = x mod n とすると、キーaとbが衝突する条件はどれか。ここで、n はハッシュ表の大きさであり, x mod nはxをnで割った余りを表す。
- システム監査技術者2009年度 春期 午前I 問11次の概念データモデルの解釈として、適切なものはどれか。ここで、モデルの記法として UML を用いる。
- システム監査技術者2010年度 春期 午前I 問11顧客は一般に複数の銀行に預金するものとして、顧客と銀行の関連を、E-R 図で次のように表現する。このモデルを関係データベース上に“銀行”表,“口座”表,“顧客”表として実装する場合の記述として、適切なものはどれか。
- システム監査技術者2010年度 春期 午前I 問12DBMSのロールフォワードを説明したものはどれか。
- システム監査技術者2010年度 春期 午前I 問21データの追加・変更・削除が、少ないながらも一定の頻度で行われるデータベースがある。このデータベースのフルバックアップを磁気テープに取得する時間間隔を今までの 2 倍にした。このとき、データベースのバックアップ又は復旧に関する記述のうち、適切なものはどれか。