#include <bits/stdc++.h>
using namespace std;
const int N = 200, L = 200;
int pp[N], aa[N];
double dp[L + 1][N + 1 + N], dq[L + 1][N + 1 + N];
int main() {
  int n, l, k;
  cin >> n >> l >> k;
  k = min(k, n);
  for (int i = 0; i < n; i++) cin >> pp[i];
  for (int i = 0; i < n; i++) cin >> aa[i];
  dp[0][n + k] = 1;
  for (int i = 0; i < n; i++) {
    double p = pp[i] / 100.0;
    for (int h = 0; h <= l; h++)
      for (int a = -n; a <= n; a++) dq[h][n + a] = 0;
    for (int h = 0; h <= l; h++) {
      int h_ = min(h + 1, l);
      for (int a = -n; a <= n; a++) {
        double x = dp[h][n + a];
        if (x == 0) continue;
        dq[h][n + a] += x * (1 - p);
        int a_ = min(a + aa[i], n);
        dq[h_][n + a_] += x * p;
      }
    }
    for (int h = 0; h <= l; h++)
      for (int a = -n; a <= n; a++) dp[h][n + a] = dq[h][n + a];
  }
  double ans = 0;
  for (int a = 0; a <= n; a++) ans += dp[l][n + a];
  printf("%f\n", ans);
  return 0;
}
