($n,$m)=glob<>; @c=(0,0,glob<>); for(1..1000){ for$i(reverse 1..$n-1){ $e0[$i]=0; $e1[$i]=0; for$j(1..$m){ $k=$i+$j<$n?$i+$j:$n*2-($i+$j); $e0[$i]+=$e0[$k]+$c[$k]; $e1[$i]+=$e1[$k]+$c[$k]; } $e0[$i]/=$m; $e1[$i]/=$m; for$j(1..$m){ $k=$i+$j<$n?$i+$j:$n*2-($i+$j); if($e0[$i]>$e1[$k]+$c[$k]){ $e0[$i]=$e1[$k]+$c[$k]; } } } } print$e0[1];