立命館合宿2012 day3 問題B Unequal Dice (AOJ 2363)
制約条件
t≦10
n,m≦100
v≦100, r≦1.0
方針
ダイスごとに期待値を求める。
値の振られていない面が出たら振りなおしなので、
期待値は1.0/(値の振られていない面の出る確率)倍になる
ソースコード
int main(){ int t; cin>>t; double e=0; while(t--){ int n,m; cin>>n>>m; double te=0, rs=0; rep(i,m){ int v; double r; cin>>v>>r; te+=v*r; rs+=r; } te/=rs; e=max(e,te); } double he=0,hs=0; int p,q; cin>>p>>q; rep(i,q){ int v; double r; cin>>v>>r; he+=v*r; hs+=r; } he/=hs; cout<<(he+0.0000001<e?"YES":"NO")<<endl; return 0; }