次のプログラム中の a と b に入れる正しい答えの組合せを,解答群の中から選べ。ここで,配列の要素番号は 1 から始まる。 一つの要素だけが 1 で他の要素が 0 であるような整数型の配列による表現を,本問では One-Hot 表現という。関数 oneHotEncoding は,図のように,色の名前が格納されている要素数 1 以上の文字列型の配列を引数として受け取り,配列に含まれる色の名前(図の例では 3 種類)に基づいて,各要素を One-Hot 表現に変換し,整数型配列の配列に格納して返す。関数 oneHotEncoding における変換の例を図に示す。 〔プログラム〕 ○整数型配列の配列: oneHotEncoding(文字列型の配列: colors) 整数型: i, j, k 文字列型の配列: colorVector ← {} // 要素数0の配列 整数型の配列: tempVector 整数型配列の配列: oneHotVector ← {} // 要素数0の配列 /* 名前一覧の作成 */ for (i を 1 から colorsの要素数 まで 1 ずつ増やす) if (colorVector の要素のいずれにも colors[i]の値 が格納されていない) colorVectorの末尾 に [ a ] を追加する endif endfor /* One-Hot表現への変換 */ for (j を 1 から colorsの要素数 まで 1 ずつ増やす) tempVector ← {} // 要素数0の配列 for (k を 1 から colorVectorの要素数 まで 1 ずつ増やす) if ([ b ]) tempVectorの末尾 に 1 を追加する else tempVectorの末尾 に 0 を追加する endif endfor oneHotVectorの末尾 に tempVector を追加する endfor return oneHotVector

出典:令和8年度 基本情報技術者試験 公開問題 科目B 問5(独立行政法人情報処理推進機構)
問題文・選択肢・正解は公開問題のとおりで、改変していません。解説と補足は当サービスによるものです。