問題一覧 > 通常問題

No.66 輝け☆全国たこやき杯

レベル : / 実行時間制限 : 1ケース 5.000秒 / メモリ制限 : 512 MB / 小数誤差許容問題 絶対誤差または相対誤差が106 以下。ただし、ジャッジ側の都合で500桁未満にしてください
タグ : / 解いたユーザー数 139
作問者 : なお
4 ProblemId : 93 / 出題時の順位表 / 自分の提出
問題文最終更新日: 2015-11-14 17:50:28

問題文

太郎君は、「輝け☆全国たこやき杯」に参加することになりました。

この大会は、総勢2M人の選手が出場し、
トーナメント形式で戦い、勝った選手がさらに勝ち残った選手と戦う方式で
優勝者を決定するものになっています。

2M人の選手にはそれぞれ、N1N2Mまでの選手番号が割り当てられており、
太郎君にはN1番が割り当てられました。

M=3の例:

トーナメントの1回戦では、N2j1の選手とN2jの選手が戦います。 (1j2M1)
そして、そのそれぞれの勝者を Nj とし、
次の2回戦では、N2k1の選手とN2kの選手が戦うといったように、(1k2M2)
合計でM回戦行うことにより、1人の優勝者が決まります。

2M人の選手はそれぞれ、強さパラメータSiを持っており、
とあるA選手とB選手が勝負するとき、それぞれの強さパラメータを Sa,Sb とすると
A選手が勝つ確率は Pa=Sa2/(Sa2+Sb2)B選手が勝つ確率は Pb=Sb2/(Sa2+Sb2)
で表されます。
選手ごとの相性など、上記以外の要素は勝敗に影響されません。

入力に2M人の選手の強さパラメータが与えられるので、
太郎君が優勝する確率を求めてください。

入力

M
S1
S2

Si

S2M

1行目に、選手の人数(2M)を表すM (1M10) が与えられます。
続く2M行に、各選手の強さパラメータを表すSi (1Si30000,1i2M)が与えられます。

出力

太郎君が優勝する確率を、0から1の範囲の小数で出力してください。
誤差は絶対誤差あるいは相対誤差の少なくとも片方が 106 以下であれば許容されます。
最後に改行してください。

サンプル

サンプル1
入力
2
1
2
3
4
出力
0.0147294

1回戦では、太郎君N1(強さ1)と選手N2(強さ2)が戦います。
太郎君N1が勝つ確率は 12/(12+22)=0.2
選手N2が勝つ確率は 22/(12+22)=0.8、となります。
同様に、選手N3(強さ3)と選手N4(強さ4)が戦い、
選手N3が勝つ確率は 32/(32+42)=0.36
選手N4が勝つ確率は 42/(32+42)=0.64、となります。

次に2回戦では太郎君の相手は、選手N3または選手N4の勝った方と戦います。
太郎君と選手N3が勝負したとき、太郎君が勝つ確率は 12/(12+32)=0.1
太郎君と選手N4が勝負したとき、太郎君が勝つ確率は 12/(12+42)=0.0588235 となるので、
太郎君が2回戦に勝つ確率は 0.36×0.1+0.64×0.0588235=0.0736467
これに、太郎君が1回戦を勝ち抜く確率 0.2 を掛けて0.0147294が、太郎君が優勝する確率となります。

サンプル2
入力
1
3000
2995
出力
0.5008340

提出するには、Twitter 、GitHub、 Googleもしくは右上の雲マークをクリックしてアカウントを作成してください。