1. paizaラーニングトップ
  2. レベルアップ問題集
  3. ゲーム・確率DPメニュー(言語選択)
  4. 問題一覧 F#(Beta)編
  5. (問題 8) サイコロ step.1 F#(Beta)編

ゲーム・確率DPメニューのサムネイル
(問題 8) サイコロ step.1 F#(Beta)編(paizaランク C 相当)

問題にチャレンジして、ユーザー同士で解答を教え合ったり、コードを公開してみよう!

問題

下記の問題をプログラミングしてみよう!

問題 7 までとは違う問題についてここからは学習していきます。

まず初めに、期待値について学習していきます。

期待値とはある確率事象において、起こりうる状態に対しての平均値をとったものです。これは、(その状態になる(特定の値 X になる)確率) × X を起こりうる状態に対して総和をとったものになります。

以下に例を挙げます。30 % で 1000 円、50 % で 300 円、20 % で 100 円もらえると仮定します。このとき、もらえる金額の期待値は 0.3 × 1000 + 0.5 × 300 + 0.2 × 100 = 470 円となります。


問題

N 個の賞が用意されている宝くじがあります。i (1 ≦ i ≦ N) 番目の賞は P_i % の確率で A_i 円もらえます。

このときこの宝くじを 1 枚買ったときのもらえる金額の期待値を求めてください。

入力される値

入力は以下のフォーマットで与えられます。


N
P_1 A_1
P_2 A_2
...
P_N A_N


1 行目には 1 つの整数 N が与えられます
i + 1 (1 ≦ i ≦ N) 行目には 2 つの整数 P_i,A_i が与えられます。
入力は合計で 1 + N 行からなり、入力値最終行の末尾に改行が 1 つ入ります。


入力値最終行の末尾に改行が1つ入ります。
文字列は標準入力から渡されます。 標準入力からの値取得方法はこちらをご確認ください
期待する出力

答えを 1 行で出力してください。

今回の制約下では期待値は整数になるので、期待値を整数で出力してください。

条件

すべてのテストケースにおいて、以下の条件をみたします。


  • 2 ≦ N ≦ 10

  • 0 ≦ P_i ≦ 100 (1 ≦ i ≦ N)

  • 0 ≦ A_i ≦ 100000 (1 ≦ i ≦ N)

  • P_i の総和は 100

  • A_i は 100 の倍数

入力例1

3
30 1000
50 300
20 100

出力例1

470

入力例2

2
100 100
0 100000

出力例2

100

入力例3

3
1 100
98 200
1 300

出力例3

200

問題一覧へ戻る

ページの先頭へ戻る