#include <bits/stdc++.h>
using namespace std;
const int MAXN = 55;
const int MAXS = 5500;
int N, R;
int F[MAXN], S[MAXN];
long double P[MAXN];
long double dp[MAXN][MAXS];
long double csolve(long double x) {
  for (int i = 0; i < MAXS; i++) {
    if (i <= R)
      dp[N][i] = 0.;
    else
      dp[N][i] = x;
  }
  for (int i = N - 1; i >= 0; i--) {
    for (int j = 0; j < MAXS - 200; j++) {
      long double d1 = x;
      long double d2 = P[i] * (F[i] + dp[i + 1][j + F[i]]) +
                       (1. - P[i]) * (S[i] + dp[i + 1][j + S[i]]);
      dp[i][j] = d2;
      if (i) dp[i][j] = min(dp[i][j], d1);
    }
  }
  return dp[0][0];
}
int main() {
  ios_base::sync_with_stdio(0);
  cin >> N >> R;
  for (int i = 0; i < N; i++) {
    cin >> F[i] >> S[i] >> P[i];
    P[i] /= 100.;
  }
  long double lo = 0.0, hi = 1e16;
  while (hi - lo > 1e-11) {
    long double mid = (hi + lo) / 2.;
    long double sscore = csolve(mid);
    if (sscore > mid) {
      lo = mid;
    } else {
      hi = mid;
    }
  }
  cout << fixed << setprecision(11);
  cout << lo << "\n";
  return 0;
}
