#include <bits/stdc++.h>
using namespace std;
const int maxi = 1e6 + 10;
string s;
int n, k, l;
int a[maxi], p[maxi];
double dp[210][210][210];
int main() {
  cin >> n >> l >> k;
  for (int i = 1; i <= n; i++) cin >> p[i];
  for (int i = 1; i <= n; i++) cin >> a[i];
  dp[0][0][0] = 1;
  for (int i = 1; i <= n; i++)
    for (int j = 0; j <= n; j++)
      for (int o = 0; o <= 201; o++) {
        dp[i][j][o] += dp[i - 1][j][o] * (100 - p[i]) / 100.00;
        if (a[i] == -1)
          dp[i][j + 1][o] += dp[i - 1][j][o] * p[i] / 100.00;
        else
          dp[i][j + 1][min(201, o + a[i] + 1)] +=
              dp[i - 1][j][o] * p[i] / 100.00;
      }
  double ans = 0;
  for (int i = l; i <= n; i++)
    for (int j = 0; j <= 201; j++)
      if (i <= j + k) ans += dp[n][i][j];
  printf("%.7f\n", ans);
}
