q=[1.0]+[a=k=0]*n=gets.to_i
g=[]
$<.map{|s|b,c=s.split;(g[b.to_i-1]||=[])<<c.to_i-1}
g.map{|h|h.map{|t|q[t]+=q[k]/h.size};k+=1}
e=[0.0]*n
(h=g[k-=1].map{|x|e[x]}
s=h.inject :+
e[k]=1+s/z=h.size
z>1&&a=[a,q[k]*=(s-h.max)/~-z-s/z].min)while k>0
p e[0]+a