#include <bits/stdc++.h>
using namespace std;
long long modpow(long long a, long long b,
                 long long mod = (long long)(1e9 + 7)) {
  if (!b) return 1;
  a %= mod;
  return modpow(a * a % mod, b / 2, mod) * (b & 1 ? a : 1) % mod;
}
mt19937 rng(chrono::steady_clock::now().time_since_epoch().count());
const int maxn = 50, maxr = 5000;
int n, r;
long double K;
long double S[maxn], F[maxn], p[maxn];
long double E[maxn][maxr + 1];
void init(long double mid) {
  K = mid;
  for (int i = 0; i < maxn; i++)
    for (int j = 0; j < maxr + 1; j++) E[i][j] = -1;
}
long double dp(int i, int j) {
  if (j < 0)
    return K;
  else if (i == n)
    return 0;
  else if (E[i][j] != -1)
    return E[i][j];
  else {
    return E[i][j] = min(K, p[i] * (dp(i + 1, j - F[i]) + F[i]) +
                                (1 - p[i]) * (dp(i + 1, j - S[i]) + S[i]));
  }
}
int main() {
  ios_base::sync_with_stdio(false);
  cin.tie(NULL);
  clock_t start = clock();
  while (cin >> n >> r) {
    for (int i = 0; i < n; i++) {
      cin >> F[i] >> S[i] >> p[i];
      p[i] /= 100.0;
    }
    long double lo = 0, hi = 1e9;
    for (int _ = 0; _ < 100; _++) {
      long double mid = (lo + hi) / 2;
      init(mid);
      if (dp(0, r) == mid)
        lo = mid;
      else
        hi = mid;
    }
    cout << setprecision(12) << lo << endl;
  }
  return 0;
}
