応用情報技術者試験 令和6年度秋期 午前 問6「自然数をキーとするデータを,ハッシュ表を用いて管理する。キー x のハッシュ関数…」の正解と解説です。応用情報技術者試験の「テクノロジ系」分野の過去問で、これまでの受験者の正答率は約65%です。
イ. a-b が n の倍数
正答率 65.0%(779人中 506人が正解)
ハッシュ法で異なるキーが同じ格納位置になることを衝突(シノニム)といい、ここでは h(a)=h(b)、すなわち a mod n = b mod n となる条件を求める問題である。2 数を n で割った余りが等しいということは、その差 a−b が n でちょうど割り切れること、つまり a−b が n の倍数であることと同値である。よって正解はイである。具体例として n=5 のとき a=13、b=3 は差 10 が 5 の倍数で、ともに余り 3 で衝突することからも確認できる。