#include <bits/stdc++.h>
using namespace std;
const long double eps = 1e-9;
const int binary_lim = 80;
int n, R;
int *fs, *ss;
double *ps;
inline void init() {
  scanf("%d%d", &n, &R);
  fs = new int[(n + 1)];
  ss = new int[(n + 1)];
  ps = new double[(n + 1)];
  for (int i = 1; i <= n; i++) {
    scanf("%d%d", fs + i, ss + i);
    cin >> ps[i];
    ps[i] *= 0.01;
  }
}
bool vis[51][5105];
double f[51][5105];
double dfs(int d, int t, double &mid) {
  if (d == n) return (t > R) ? (mid) : (0);
  if (vis[d][t]) return f[d][t];
  vis[d][t] = true;
  f[d][t] = (dfs(d + 1, t + fs[d + 1], mid) + fs[d + 1]) * ps[d + 1] +
            (dfs(d + 1, t + ss[d + 1], mid) + ss[d + 1]) * (1 - ps[d + 1]);
  if (mid < f[d][t]) f[d][t] = mid;
  return f[d][t];
}
double dp(double mid) {
  memset(vis, false, sizeof(vis));
  return dfs(0, 0, mid);
}
inline void solve() {
  double l = 0, r = 1e9;
  for (int i = 0; i < binary_lim; i++) {
    double mid = (l + r) / 2;
    if (dp(mid) < mid)
      r = mid;
    else
      l = mid;
  }
  printf("%.9lf", l);
}
int main() {
  init();
  solve();
  return 0;
}
