Ймовірнісне OR#2153

Ймовірнісне OR

1 секунда
64 мегабайти
Середня

Усі знають операцію OR. Введемо нову операцію, названу Ймовірнісним OR, яку позначимо як . Для заданого дійсного числа (0 \leq p \leq 1) та двох бітів і :

Тепер, для двох заданих невід’ємних цілих чисел та ми можемо визначити побітову Ймовірнісну OR-операцію. Результат цієї операції — це число, яке отримують, застосовуючи операцію до кожної пари бітів та з тими самими позиціями. Наприклад, для p = 0{,}5, x = 2 та y = 4, можливі результати — , , або , кожен з імовірністю .

Вам надано список невід’ємних цілих чисел. Напишіть програму для обчислення математичного сподівання результату застосування побітової Ймовірнісної OR-операції до всіх цих чисел для заданого . Числа обробляються зліва направо.

Вхідні дані

У вхідному файлі спочатку задано дійсне число (0 \leq p \leq 1) рівно з двома знаками після коми. Далі йде ціле число (1 \leq n \leq 100). Наступний рядок містить чисел a_i у тому порядку, в якому вони використовуються в операції (0 \leq a_i \leq 10^9).

Вихідні дані

Виведіть математичне сподівання результату виконання Ймовірнісної OR-операції над заданими числами для вказаного . Відповідь виведіть з точністю до двох знаків після коми.

Приклади

Приклад 1

Loading
Loading