#include <bits/stdc++.h>
using namespace std;
inline long long read() {
  long long x = 0, f = 1;
  char c = getchar();
  while ((c < '0' || c > '9') && (c != '-')) c = getchar();
  if (c == '-') f = -1, c = getchar();
  while (c >= '0' && c <= '9') x = x * 10 + c - '0', c = getchar();
  return x * f;
}
const int N = 60, M = 5010;
int n, m, a[N], b[N], p[N];
double dp[N][M];
inline bool check(double x) {
  for (register int j = (m + 1); j <= (5000); j++) dp[n + 1][j] = x;
  for (register int i = (n); i >= (1); i--) {
    for (register int j = (0); j <= (5000); j++)
      if (j > m)
        dp[i][j] = x;
      else
        dp[i][j] =
            min(x, p[i] * (dp[i + 1][j + a[i]] + a[i]) / 100 +
                       (100 - p[i]) * (dp[i + 1][j + b[i]] + b[i]) / 100);
  }
  return dp[1][0] < x;
}
int main() {
  n = read(), m = read();
  for (register int i = (1); i <= (n); i++)
    a[i] = read(), b[i] = read(), p[i] = read();
  double l = 0, r = 1e9;
  for (register int i = (1); i <= (100); i++) {
    double mid = (l + r) / 2;
    if (check(mid))
      r = mid;
    else
      l = mid;
  }
  printf("%.10lf\n", l);
}
