一様乱数の差がゼロになる確率はどう数える?
基本情報技術者試験 令和元年度秋期 午前 問6 / 基礎理論 › 応用数学
過去問にチャレンジ
Random(n)は,0以上n未満の整数を一様な確率で返す関数である。整数型の変数A,B及びCに対して次の一連の手続を実行したとき,Cの値が0になる確率はどれか。 A=Random(10) B=Random(10) C=A-B
- ア
- イ
- ウ
- エ
会話形式の解説
講師差が0になるのは、どのようなときかを先に考えます。
受験者AとBが同じ値のときです。ただ、(0,0)だけを考えて1/100としたくなります。
講師AもBも0から9までの10通りをとるので、組は全部で10×10=100通りです。同じ値になる組は(0,0)だけではありません。
受験者(1,1)や(2,2)も入りますね。最後の(9,9)まで数えると何通りですか。
講師Aの各値に対して、同じ値のBが一つずつあります。Aは10通りなので、一致する組も10通りです。
受験者では、求める確率は10÷100=1/10です。1/100は一致する組を1通りしか数えていません。
講師そのとおりです。1/20なら条件を満たす組は100通り中5通りですが、実際は10通りです。
受験者1/5なら20通り必要なので、今度は一致する組を多く見積もっています。
講師はい。全体の組を掛け算で数え、差が0になる組を数えて割ると、1/10と判断できます。
まとめ
C=A-Bが0になる条件はA=Bです。AとBの組は全部で10×10=100通りあり、値が等しい組は10通りあります。したがって確率は10÷100=1/10で、正解はウです。
解答・解説
正解はウです
この問題のテーマ
独立に得た二つの一様乱数について、差が0になる確率を求める問題です。
解き方の考え方
AとBはそれぞれ0~9の10通りの値をとるので、組合せは10×10=100通りです。C=A-Bが0になるのはA=Bのときで、(0,0)から(9,9)まで10通りあります。したがって確率は10÷100=1/10となり、ウと一致します。
選択肢ごとの解説
- ×アアの1/100は、100通りの組合せのうち1通りだけが条件を満たす場合の確率です。A=Bとなる組は10通りあるため、この値にはなりません。
- ×イイの1/20は、100通りのうち5通りが条件を満たす確率です。実際にはAの各値に対して同じ値のBが一つずつあり、該当する組は10通りです。
- ○ウウの1/10は、AとBが等しくなる10通りを、全体の100通りで割った値です。Cが0になる条件を満たす確率なので、これが正解です。
- ×エエの1/5なら、100通りのうち20通りでCが0になる計算です。しかし、AとBが等しい組は10通りなので、確率を大きく見積もっています。
POINT
- 差が0になる条件は、二つの値が等しいことです。
- 二つの乱数の組を数えるときは、それぞれの値の通り数を掛けます。
- 確率は、条件を満たす組の数を全ての組の数で割って求めます。
