基本情報トップに戻る
練習問題難易度: 標準2019年度

基本情報技術者 過去問練習問題 第10問

問題

10進法で5桁の数 a₁a₂a₃a₄a₅ を、ハッシュ法を用いて配列に格納したい。ハッシュ関数を mod(a₁ + a₂ + a₃ + a₄ + a₅, 13) とし、求めたハッシュ値に対応する位置の配列要素に格納する場合、54321 は配列のどの位置に入るか。ここで、mod(x, 13) は、x を 13 で割った余りとする。

の図表

選択肢

  1. 11
  2. 22
  3. 37
  4. 411

正解

2. 2

詳しい解説を見る

解説

このハッシュ関数は各桁の数字の合計を 13 で割った余りを求めるものです。54321 の各桁は 5、4、3、2、1 なので、その合計は 5 + 4 + 3 + 2 + 1 = 15 です。15 を 13 で割ると商 1・余り 2 となるので、mod(15, 13) = 2 です。したがって配列の位置 2 に格納され、イが正解です。数値そのものを 13 で割るのではなく、各桁の和を用いる点に注意します。(出典: 令和元年度 秋期 基本情報技術者試験 午前 問10)

一問一答

科目A 180問+科目B 60問

練習問題の関連問題

この調子で演習を続けよう

スキマ資格では基本情報の全2398問を分野別・難易度別に体系的に学習できます。基本情報技術者は科目A(広く浅く)と科目B(プログラミング・アルゴリズム)の両輪での対策が必要です。