#include <bits/stdc++.h>
using namespace std;
double p[21], dp[(1 << 21)], ans[21];
int n, k;
int main() {
  scanf("%d %d", &n, &k);
  for (int i = 0; i < n; i++) scanf("%lf", p + i);
  dp[0] = 1;
  for (int bit = 1; bit < (1 << n); bit++)
    if (__builtin_popcount(bit) <= k) {
      double rp = 1;
      for (int i = 0; i < n; i++)
        if ((bit & (1 << i))) rp -= p[i];
      for (int i = 0; i < n; i++)
        if ((bit & (1 << i))) {
          if (p[i] < 1e-9) continue;
          dp[bit] += dp[bit ^ (1 << i)] * p[i] / (rp + p[i]);
          ans[i] += dp[bit ^ (1 << i)] * p[i] / (rp + p[i]);
        }
    }
  for (int i = 0; i < n; i++) printf("%.11lf ", ans[i]);
}
