N = gets.to_i
arr = gets.split.map(&:to_f)
# p arr
ans = 0
0.upto((1 << N) - 1) do |i|
  cal = 1.0
  count = 0
  0.upto(N-1) do |j|
    if (i >> j & 1) == 1
      cal *= arr[j]
      count += 1
    else
      cal *= 1 - arr[j]
    end
  end
  ans += cal if count > N / 2
end
puts ans