#include <bits/stdc++.h>
using namespace std;
int N, L, K;
int P[202];
int B[202];
bool vis[201][201][402];
double memo[201][201][402];
double solve(int idx, int won, int bags) {
  double &ret = memo[idx][won][bags];
  bool &visit = vis[idx][won][bags];
  if (visit) return ret;
  visit = 1;
  int b = bags - 200;
  if (idx == N) {
    if (won >= L && b >= 0)
      return ret = 1.0;
    else
      return ret = 0.0;
  }
  ret = 0.0;
  double p = (double)P[idx] / 100;
  ret += (1 - p) * solve(idx + 1, won, bags);
  int tb = b + B[idx];
  if (tb >= 200) tb = 200;
  ret += p * solve(idx + 1, won + 1, tb + 200);
  return ret;
}
int main() {
  cin >> N >> L >> K;
  for (int i = 0; i < N; i++) cin >> P[i];
  for (int i = 0; i < N; i++) cin >> B[i];
  printf("%.9lf\n", solve(0, 0, K + 200));
  return 0;
}
