#include <bits/stdc++.h>
using namespace std;
int main() {
  int n, k;
  scanf("%d%d", &n, &k);
  vector<double> p(n);
  for (int i = 0; i < n; ++i) {
    scanf("%lf", &p[i]);
  }
  vector<double> q(1 << n);
  q[0] = 1;
  vector<double> res(n);
  for (int mask = 0; mask < q.size(); ++mask) {
    int bits = __builtin_popcount(mask);
    double s = 1;
    for (int i = 0; i < n; ++i)
      if (mask & (1 << i)) {
        s -= p[i];
      }
    bool stop = bits == k || abs(s) < 1e-8;
    for (int i = 0; i < n; ++i)
      if (mask & (1 << i)) {
        if (stop) res[i] += q[mask];
      }
    if (stop) continue;
    for (int i = 0; i < n; ++i)
      if (!(mask & (1 << i))) {
        q[mask | (1 << i)] += q[mask] * p[i] / s;
      }
  }
  for (int i = 0; i < n; ++i) printf("%.8lf ", res[i]);
  return 0;
}
