#include <bits/stdc++.h>
using namespace std;
int n, k, l;
double prop[205];
int cost[205];
double dp[205][205][415];
int main() {
  ios::sync_with_stdio(0);
  cin >> n >> l >> k;
  for (int i = 1; i <= n; i++) cin >> prop[i], prop[i] = prop[i] / 100.0;
  for (int i = 1; i <= n; i++) cin >> cost[i];
  for (int i = 200; i <= 403; i++) dp[0][0][i] = 1;
  for (int i = 1; i <= n; i++) {
    for (int rem = 0; rem <= l; rem++) {
      for (int j = 0; j <= 403; j++) {
        if (cost[i] == -1)
          dp[i][rem][j] = dp[i - 1][max(rem - 1, 0)][j - 1] * prop[i];
        else if (cost[i] != -1)
          dp[i][rem][j] =
              dp[i - 1][max(rem - 1, 0)][min(403, j + cost[i])] * prop[i];
        dp[i][rem][j] += dp[i - 1][rem][j] * (1 - prop[i]);
      }
    }
  }
  cout << fixed << dp[n][l][200 + k] << "\n";
  return 0;
}
