#include <bits/stdc++.h>
using namespace std;
const int N = 21;
const int M = 1048577;
const double eps = 1e-10;
int n, k, cnt;
double p[N], ans[N], f[M];
int check(int x) {
  int ret = 0;
  for (int i = 0; i < n; ++i)
    if (x & (1 << i)) ++ret;
  return ret;
}
int main() {
  scanf("%d%d", &n, &k);
  for (int i = 0; i < n; ++i) {
    scanf("%lf", &p[i]);
    if (p[i] < eps) ++cnt;
  }
  k = min(k, n - cnt);
  f[0] = 1;
  for (int i = 0; i < (1 << n); ++i) {
    double tmp = 1;
    for (int j = 0; j < n; ++j) {
      if (i & (1 << j)) {
        tmp -= p[j];
        if (check(i) == k) ans[j] += f[i];
      }
    }
    for (int j = 0; j < n; ++j)
      if (!(i & (1 << j))) f[i | (1 << j)] += f[i] * p[j] / tmp;
  }
  for (int i = 0; i < n; ++i) printf("%.10lf ", ans[i]);
  return 0;
}
