#include <bits/stdc++.h>
using namespace std;
const int N = 20;
const int M = (1 << 20);
int cnt[M];
double p[N], dp[M];
int main() {
  ios_base::sync_with_stdio(false);
  cout << setprecision(7) << fixed;
  int n, k;
  cin >> n >> k;
  for (int i = 0; i < n; ++i) {
    cin >> p[i];
  }
  for (int i = 0; i < (1 << n); ++i) {
    cnt[i] = __builtin_popcount(i);
  }
  for (int s = 0; s < n; ++s) {
    if (p[s] < 1e-9) {
      cout << 0.0 << ' ';
      continue;
    }
    swap(p[s], p[n - 1]);
    dp[0] = p[n - 1];
    double ans = dp[0];
    for (int i = 1; i < (1 << (n - 1)); ++i) {
      double q = 0;
      dp[i] = 0;
      for (int j = 0; j < n - 1; ++j) {
        if (i & (1 << j)) {
          dp[i] += dp[i ^ (1 << j)] * p[j];
          q += p[j];
        }
      }
      dp[i] /= 1.0 - q;
      if (cnt[i] < k) {
        ans += dp[i];
      }
    }
    cout << ans << ' ';
    swap(p[s], p[n - 1]);
  }
  cout << endl;
  return 0;
}
