#include <bits/stdc++.h>
using namespace std;
int n, v[1000001], c[1000001];
int maxv[1000001][21];
int minc[1000001][21];
int _log2[2000001], pow2[21];
int querymaxv(int l, int r) {
  int k = _log2[r - l + 1];
  return max(maxv[l][k], maxv[r - (1 << k) + 1][k]);
}
int queryminc(int l, int r) {
  int k = _log2[r - l + 1];
  return min(minc[l][k], minc[r - (1 << k) + 1][k]);
}
int p[1000001];
long double getcomb(int n, int i, int k) {
  long double res = 1;
  for (int j = 1; j < k; j++) {
    res *= (i - j);
    res /= (n - j);
  }
  return res;
}
int main() {
  for (int i = 0; i <= 20; i++) pow2[i] = 1 << i;
  for (int i = 0; i <= 20; i++) _log2[pow2[i]] = i;
  for (int i = 3; i < (1 << 20); i++)
    if (!_log2[i]) _log2[i] = _log2[i - 1];
  int k;
  scanf("%d%d", &n, &k);
  for (int i = 1; i <= n; i++) {
    scanf("%d", &v[i]);
    v[i] *= 100;
  }
  for (int i = 1; i <= n; i++) scanf("%d", &c[i]);
  for (int i = 1; i <= n; i++) maxv[i][0] = v[i];
  for (int j = 1; j <= 20; j++)
    for (int i = 1; i <= n - (1 << j) + 1; i++)
      maxv[i][j] = max(maxv[i][j - 1], maxv[i + (1 << (j - 1))][j - 1]);
  for (int i = 1; i <= n; i++) minc[i][0] = c[i];
  for (int j = 1; j <= 20; j++)
    for (int i = 1; i <= n - (1 << j) + 1; i++)
      minc[i][j] = min(minc[i][j - 1], minc[i + (1 << (j - 1))][j - 1]);
  for (int i = 1; i <= n; i++) {
    if (v[i] > c[i])
      p[i] = c[i];
    else if (querymaxv(i, n) <= queryminc(i, n))
      p[i] = min(querymaxv(i, n), queryminc(i, n));
    else {
      int ll = i, rr = n, mid;
      while (ll + 1 < rr) {
        mid = (ll + rr) >> 1;
        if (querymaxv(i, mid) <= queryminc(i, mid))
          ll = mid;
        else
          rr = mid;
      }
      int v1 = min(queryminc(i, ll), querymaxv(i, ll));
      int v2 = min(queryminc(i, rr), querymaxv(i, rr));
      p[i] = max(v1, v2);
    }
  }
  sort(p + 1, p + n + 1);
  reverse(p + 1, p + n + 1);
  long double ans = 0;
  long double combnow = getcomb(n, n, k);
  combnow *= k;
  combnow /= n;
  for (int i = n; i >= k; i--) {
    ans += combnow * p[i];
    combnow *= (i - k);
    combnow /= (i - 1);
  }
  cout << fixed << setprecision(20) << ans << endl;
}
