#include <bits/stdc++.h>
using namespace std;
const int mxN = 201;
double dp[mxN][mxN][mxN];
int main() {
  int n, l, k;
  cin >> n >> l >> k;
  vector<double> a(n);
  vector<int> b(n);
  for (int i = 0; i < n; ++i) {
    cin >> a[i];
    a[i] /= 100.0;
  }
  for (int i = 0; i < n; ++i) {
    cin >> b[i];
    ++b[i];
  }
  dp[0][0][0] = 1;
  for (int i = 0; i < n; ++i) {
    for (int j = 0; j <= i; ++j) {
      for (int k = 0; k <= n; ++k) {
        dp[i + 1][j + 1][min(k + b[i], n)] += dp[i][j][k] * a[i];
        dp[i + 1][j][k] += dp[i][j][k] * (1 - a[i]);
      }
    }
  }
  double ans = 0;
  for (int i = 0; i <= n; ++i) {
    for (int j = 0; j <= n; ++j) {
      if (i >= l && k + j >= i) {
        ans += dp[n][i][j];
      }
    }
  }
  cout << ans << '\n';
}
