#include <bits/stdc++.h>
using namespace std;
inline void out(int a) { printf("%d\n", a); }
inline void out(int a, int b) { printf("%d %d\n", a, b); }
inline void outf(double a) { printf("%3.lf\n", a); }
inline void outf(double a, double b) { printf("%3.lf %3.lf\n", a, b); }
inline void base() {
  ios_base::sync_with_stdio(false);
  cin.tie(0);
}
int n, r;
double dp[55][6005];
long long F[55], S[55];
double P[55];
bool cek(double m) {
  for (int i = 0; i <= n * 100 + 100; i++) dp[n][i] = 0.0;
  for (int i = r + 1; i <= n * 100 + 100; i++) dp[n][i] = m + 100.0;
  for (int i = n - 1; i >= 0; i--) {
    for (int j = 0; j <= n * 100 + 100; j++) {
      double expa = (dp[i + 1][j + F[i]] + F[i]);
      double expb = (dp[i + 1][j + S[i]] + S[i]);
      dp[i][j] = min(expa, m + F[i]) * P[i] + min(expb, m + S[i]) * (1 - P[i]);
    }
  }
  return dp[0][0] >= m;
}
int main() {
  base();
  cin >> n >> r;
  for (int i = 0; i < n; i++) {
    cin >> F[i] >> S[i] >> P[i];
    P[i] /= 100.0;
  }
  double l = 0, r = 1e10;
  for (int i = 0; i < 100; i++) {
    double m = (l + r) / 2.0;
    if (cek(m))
      l = m;
    else
      r = m;
  }
  cout << fixed << setprecision(10) << l << endl;
}
