#include <bits/stdc++.h>
using namespace std;
long double dp[55][5005];
int n, r;
int f[55];
int s[55];
int p[55];
int top = 0;
bool check(long double mid) {
  for (int i = 0; i <= top; i++) dp[n][i] = (i <= r ? 0 : mid);
  for (int i = n - 1; i >= 0; i--) {
    for (int j = 0; j <= top; j++) {
      dp[i][j] = 0.01 * (p[i] * (dp[i + 1][j + f[i]] + f[i]) +
                         (100 - p[i]) * (dp[i + 1][j + s[i]] + s[i]));
      if (i > 0) dp[i][j] = min(dp[i][j], mid);
    }
  }
  if (dp[0][0] >= mid) return true;
  return false;
}
int main() {
  scanf("%d%d", &n, &r);
  for (int i = 0; i < n; i++) scanf("%d%d%d", &f[i], &s[i], &p[i]);
  for (int i = 0; i < n; i++) top += s[i];
  long double l = 0, r = 1e9 + 7;
  int T = 120;
  while (T--) {
    long double mid = (l + r) / 2;
    if (check(mid))
      l = mid;
    else
      r = mid;
  }
  cout << fixed << setprecision(10) << l << endl;
  return 0;
}
