#include <bits/stdc++.h>
using namespace std;
int n, cnt[1 << 20], k, m, bc[21];
double p[21], f[1 << 20], ans[21];
int main() {
  for (int i = 1; i < 1 << 20; i++)
    for (int j = i; j; j -= j & -j) cnt[i]++;
  scanf("%d%d", &n, &k);
  for (int i = 0; i < n; i++) {
    scanf("%lf", &p[i]);
    if (p[i] > 1e-9) p[m] = p[i], bc[m++] = i;
  }
  k = min(k, m);
  f[0] = 1;
  for (int i = 0; i < 1 << m; i++) {
    double out = 1.0;
    for (int j = 0; j < m; j++)
      if (i >> j & 1) {
        out -= p[j];
        if (cnt[i] == k) ans[bc[j]] += f[i];
      }
    for (int j = 0; j < n; j++)
      if (~i >> j & 1) f[i | 1 << j] += f[i] * p[j] / out;
  }
  for (int i = 0; i < n; i++) printf("%.10lf ", ans[i]);
  return 0;
}
