#include <bits/stdc++.h>
using namespace std;
double us1[210];
double us2[210];
int deal(double *us, int s, int e, int p) {
  int flag = 0;
  for (int i = 1; i <= 200; i++) {
    if (us[i] < 1e-4 / 200.) continue;
    double dd = us[i] * (100 - p) / 100.;
    dd /= (e - s + 1);
    us[i] = us[i] / 100. * p;
    flag = 1;
    for (int ss = s; ss <= e; ss++) {
      us[max(i - ss, 0)] += dd;
    }
  }
  return flag;
}
int main() {
  int hp1, t1, s1, e1, p1;
  int hp2, t2, s2, e2, p2;
  cin >> hp1 >> t1 >> s1 >> e1 >> p1;
  cin >> hp2 >> t2 >> s2 >> e2 >> p2;
  if (p1 == 100) {
    cout << 0.0;
    return 0;
  }
  if (p2 == 100) {
    cout << 1.0;
    return 0;
  }
  int nt1 = 0, nt2 = 0;
  for (int i = 0; i <= 200; i++) {
    us1[i] = 0.;
    us2[i] = 0.;
  }
  us1[hp1] = 1.;
  us2[hp2] = 1.;
  double ret = 0;
  while (1) {
    if (nt1 <= nt2) {
      nt1 += t1;
      deal(us2, s1, e1, p1);
      ret += (1. - us1[0]) * us2[0];
      us2[0] = 0;
    } else if (nt1 > nt2) {
      nt2 += t2;
      if (!deal(us1, s2, e2, p2)) break;
    }
  }
  cout << ret << endl;
  return 0;
}
