#include <bits/stdc++.h>
using namespace std;
const int N = 1000005;
int v[N], c[N];
int n, k;
vector<int> z;
void input() {
  scanf("%d %d", &n, &k);
  for (int i = 1; i <= n; i++) scanf("%d", &v[i]);
  for (int i = 1; i <= n; i++) scanf("%d", &c[i]);
  z.push_back(min(100 * v[n], c[n]));
  for (int i = n - 1; i >= 1; i--) {
    int larger = max(z.back(), v[i] * 100);
    int smaller = min(larger, c[i]);
    z.push_back(min(larger, smaller));
  }
}
void pro() {
  sort(z.begin(), z.end());
  double ans = 0;
  double chance = 1;
  for (int i = 0; i < k; i++) {
    ans += z[i] * chance * k / (n - i);
    chance *= 1. * (n - k - i) / (n - i);
  }
  cout << fixed << setprecision(10) << ans << endl;
}
int main() {
  input();
  pro();
}
