#include <bits/stdc++.h>
using namespace std;
double dp[1 << 20], p[20], ans[20];
int main() {
  int n, k;
  scanf("%d %d", &n, &k);
  int zero = 0;
  for (int i = 0; i < n; ++i) {
    scanf("%lf", &p[i]);
    if (p[i] == 0.0) ++zero;
  }
  k = min(k, n - zero);
  dp[0] = 1.0;
  for (unsigned i = 0; i < (1 << n); ++i) {
    if (dp[i] == 0.0) continue;
    double denom = 0.0;
    for (unsigned j = 0; j < n; ++j)
      if (!((1 << j) & i)) denom += p[j];
    for (unsigned j = 0; j < n; ++j)
      if (!((1 << j) & i)) dp[i | (1 << j)] += dp[i] * p[j] / denom;
    if (__builtin_popcount(i) == k)
      for (unsigned j = 0; j < n; ++j)
        if ((1 << j) & i) ans[j] += dp[i];
  }
  for (int i = 0; i < n; ++i)
    printf("%.8lf%c", ans[i], (i == n - 1) ? '\n' : ' ');
}
