eolymp
bolt
Спробуйте наш новий інтерфейс для відправки розв'язків
Задачі

Задана ймовірність

Задана ймовірність

\textbf{n} друзів зібралися за покупками до супермаркету. Ймовірність купити щось складає \textbf{p_1}, \textbf{p_2}, \textbf{p_3}, \textbf{...}, \textbf{p_n} відповідно для кожного друга. Після відвідування магазину виявилося, що в точності \textbf{r} друзів здійснили покупки (інші нічого не купили). Визначити ймовірність покупної спроможності кожного друга при виконанні цієї умови. \InputFile Містить не більш ніж \textbf{50} тестів. Перший рядок кожного тесту містить два числа \textbf{n} (\textbf{1} ≤ \textbf{n} ≤ \textbf{20}) та \textbf{r} (\textbf{0} ≤ \textbf{r} ≤ \textbf{n}). Кожний з наступних \textbf{n} рядків містить ймовірність покупки \textbf{i} - го друга \textbf{p_i} (\textbf{0.1} ≤ \textbf{p_i} ≤ \textbf{1}). Усі ймовірності містять як мінімум два знаки після десяткової коми. Останній тест містить \textbf{n} = \textbf{r }= \textbf{0} і не обробляється. \OutputFile Для кожного тесту вивести його номер, а також \textbf{n} рядків. \textbf{i} - ий рядок має містити ймовірність покупної спроможності \textbf{i} - го друга за умови, що в точності \textbf{r} друзів здійснили покупки. Ймовірності слід виводити з \textbf{6} цифрами після десяткової коми.
Ліміт часу 1 секунда
Ліміт використання пам'яті 64 MiB
Вхідні дані #1
3 2
0.10
0.20
0.30
5 1
0.10
0.10
0.10
0.10
0.10
0 0
Вихідні дані #1
Case 1:
0.413043
0.739130
0.847826
Case 2:
0.200000
0.200000
0.200000
0.200000
0.200000