#include <bits/stdc++.h>
using namespace std;
const int MAXN = 110;
const long long INF = 0x3f3f3f3f;
long long n, r;
long double k;
long long f[MAXN], s[MAXN];
long double p[MAXN];
long double memo[60][5010];
long double pd(long long pos, long long q) {
  if (q > r) return INF;
  if (pos > n) return 0;
  if (memo[pos][q] != -1) {
    return memo[pos][q];
  }
  long double P = p[pos] / 100;
  long double Q = 1 - P;
  long double r1 = P * (long double)(pd(pos + 1, q + f[pos]) + f[pos]);
  long double r2 = Q * (long double)(min(k, pd(pos + 1, q + s[pos])) + s[pos]);
  return memo[pos][q] = r1 + r2;
}
long long bb(long long x, long long y) {
  for (long long i = 0; i < 60; i++)
    for (long long j = 0; j < 5010; j++) memo[i][j] = -1;
  long long meio = (x + y) / 2;
  k = (long double)meio / (long double)10000000000;
  if (x == y) return x;
  if (pd(1, 0) > k) return bb(meio + 1, y);
  return bb(x, meio);
}
signed main() {
  cin >> n >> r;
  for (long long i = 1; i <= n; i++) {
    cin >> f[i] >> s[i] >> p[i];
  }
  cout << setprecision(10) << fixed;
  cout << (long double)bb(0, 1000000000000000000) / 10000000000 << endl;
}
