問題
自然数を除数とした剰余を返すハッシュ関数がある。値がそれぞれ 571,1168,1566 である三つのレコードのキー値を入力値としてこのハッシュ関数を施したところ,全てのハッシュ値が衝突した。このとき使用した除数は幾つか。
選択肢
- 1193
- 2197
- 3199
- 4211
正解
3. 199
詳しい解説を見る解説を閉じる
解説
3つの値すべてが同じ剰余=衝突するには、値の差が除数で割り切れる必要がある。1168−571=597、1566−1168=398、1566−571=995。これらの公約数を求めると597=3×199、398=2×199、995=5×199。共通因数は199。よって除数は199である。(出典: 平成30年度 秋期 応用情報技術者試験 午前 問27)
一問一答
全400問を繰り返し学習