#pragma GCC optimize ("Ofast")
#include<bits/stdc++.h>
using namespace std;
template<class S, class T> inline S max_L(S a,T b){
return a>=b?a:b;
}
inline int my_getchar_unlocked(){
static char buf[1048576];
static int s = 1048576;
static int e = 1048576;
if(s == e && e == 1048576){
e = fread_unlocked(buf, 1, 1048576, stdin);
s = 0;
}
if(s == e){
return EOF;
}
return buf[s++];
}
inline void rd(int &x){
int k;
int m=0;
x=0;
for(;;){
k = my_getchar_unlocked();
if(k=='-'){
m=1;
break;
}
if('0'<=k&&k<='9'){
x=k-'0';
break;
}
}
for(;;){
k = my_getchar_unlocked();
if(k<'0'||k>'9'){
break;
}
x=x*10+k-'0';
}
if(m){
x=-x;
}
}
inline void rd(double &x){
int k;
int m=0;
int p=0;
double r = 1;
x = 0;
for(;;){
k = my_getchar_unlocked();
if(k=='-'){
m = 1;
break;
}
if(k=='.'){
p = 1;
break;
}
if('0'<=k&&k<='9'){
x = k - '0';
break;
}
}
for(;;){
k = my_getchar_unlocked();
if(k=='.'){
p = 1;
continue;
}
if(k<'0'||k>'9'){
break;
}
if(p){
r *= 0.1;
x += r * (k - '0');
}
else{
x = x * 10 + k - '0';
}
}
if(m){
x = -x;
}
}
struct MY_WRITER{
char buf[1048576];
int s;
int e;
MY_WRITER(){
s = 0;
e = 1048576;
}
~MY_WRITER(){
if(s){
fwrite_unlocked(buf, 1, s, stdout);
}
}
}
;
MY_WRITER MY_WRITER_VAR;
void my_putchar_unlocked(int a){
if(MY_WRITER_VAR.s == MY_WRITER_VAR.e){
fwrite_unlocked(MY_WRITER_VAR.buf, 1, MY_WRITER_VAR.s, stdout);
MY_WRITER_VAR.s = 0;
}
MY_WRITER_VAR.buf[MY_WRITER_VAR.s++] = a;
}
inline void wt_L(char a){
my_putchar_unlocked(a);
}
int WRITER_DOUBLE_DIGIT = 15;
inline int writerDigit_double(){
return WRITER_DOUBLE_DIGIT;
}
inline void writerDigit_double(int d){
WRITER_DOUBLE_DIGIT = d;
}
inline void wt_L(double x){
const int d = WRITER_DOUBLE_DIGIT;
int k;
int r;
double v;
if(x!=x || (x==x+1 && x==2*x)){
my_putchar_unlocked('E');
my_putchar_unlocked('r');
my_putchar_unlocked('r');
return;
}
if(x < 0){
my_putchar_unlocked('-');
x = -x;
}
x += 0.5 * pow(0.1, d);
r = 0;
v = 1;
while(x >= 10*v){
v *= 10;
r++;
}
while(r >= 0){
r--;
k = floor(x / v);
if(k >= 10){
k = 9;
}
if(k <= -1){
k = 0;
}
x -= k * v;
v *= 0.1;
my_putchar_unlocked(k + '0');
}
if(d > 0){
my_putchar_unlocked('.');
v = 1;
for(r=(0);r<(d);r++){
v *= 0.1;
k = floor(x / v);
if(k >= 10){
k = 9;
}
if(k <= -1){
k = 0;
}
x -= k * v;
my_putchar_unlocked(k + '0');
}
}
}
int N;
double S;
double A[100000];
double B[100000];
double C[100000];
int main(){
int i;
double res = 0;
double d;
double us;
double tmp;
rd(N);
rd(S);
{
int Lj4PdHRW;
for(Lj4PdHRW=(0);Lj4PdHRW<(N);Lj4PdHRW++){
rd(A[Lj4PdHRW]);
rd(B[Lj4PdHRW]);
rd(C[Lj4PdHRW]);
}
}
double e98WHCEY;
double cTE1_r3A;
double RZTsC2BF;
e98WHCEY = 0;
cTE1_r3A = 2e9;
for(;;){
int i;
RZTsC2BF = (e98WHCEY + cTE1_r3A) / 2;
if(RZTsC2BF == e98WHCEY || RZTsC2BF == cTE1_r3A){
break;
}
us = 0;
for(i=(0);i<(N);i++){
tmp =max_L((RZTsC2BF - B[i]) / (2*A[i]), 0);
us += tmp;
}
if(us < S){
cTE1_r3A = RZTsC2BF;
}
else{
e98WHCEY = RZTsC2BF;
}
}
d =((e98WHCEY + cTE1_r3A) / 2);
for(i=(0);i<(N);i++){
tmp =max_L((d - B[i]) / (2*A[i]), 0);
res += A[i] * tmp * tmp + B[i] * tmp + C[i];
}
wt_L(res);
wt_L('\n');
return 0;
}
// cLay varsion 20201102-1
// --- original code ---
// int N;
// double S, A[1d5], B[1d5], C[1d5];
// {
// double res = 0, d, us, tmp;
// rd(N,S,(A,B,C)(N));
// d = bsearch_min[double,d,0,2e9][
// us = 0;
// rep(i,N){
// tmp = max((d - B[i]) / (2*A[i]), 0);
// us += tmp;
// }
// ](us < S);
// rep(i,N){
// tmp = max((d - B[i]) / (2*A[i]), 0);
// res += A[i] * tmp * tmp + B[i] * tmp + C[i];
// }
// wt(res);
// }
I3ByYWdtYSBHQ0Mgb3B0aW1pemUgKCJPZmFzdCIpCiNpbmNsdWRlPGJpdHMvc3RkYysrLmg+CnVzaW5nIG5hbWVzcGFjZSBzdGQ7CnRlbXBsYXRlPGNsYXNzIFMsIGNsYXNzIFQ+IGlubGluZSBTIG1heF9MKFMgYSxUIGIpewogIHJldHVybiBhPj1iP2E6YjsKfQppbmxpbmUgaW50IG15X2dldGNoYXJfdW5sb2NrZWQoKXsKICBzdGF0aWMgY2hhciBidWZbMTA0ODU3Nl07CiAgc3RhdGljIGludCBzID0gMTA0ODU3NjsKICBzdGF0aWMgaW50IGUgPSAxMDQ4NTc2OwogIGlmKHMgPT0gZSAmJiBlID09IDEwNDg1NzYpewogICAgZSA9IGZyZWFkX3VubG9ja2VkKGJ1ZiwgMSwgMTA0ODU3Niwgc3RkaW4pOwogICAgcyA9IDA7CiAgfQogIGlmKHMgPT0gZSl7CiAgICByZXR1cm4gRU9GOwogIH0KICByZXR1cm4gYnVmW3MrK107Cn0KaW5saW5lIHZvaWQgcmQoaW50ICZ4KXsKICBpbnQgazsKICBpbnQgbT0wOwogIHg9MDsKICBmb3IoOzspewogICAgayA9IG15X2dldGNoYXJfdW5sb2NrZWQoKTsKICAgIGlmKGs9PSctJyl7CiAgICAgIG09MTsKICAgICAgYnJlYWs7CiAgICB9CiAgICBpZignMCc8PWsmJms8PSc5Jyl7CiAgICAgIHg9ay0nMCc7CiAgICAgIGJyZWFrOwogICAgfQogIH0KICBmb3IoOzspewogICAgayA9IG15X2dldGNoYXJfdW5sb2NrZWQoKTsKICAgIGlmKGs8JzAnfHxrPic5Jyl7CiAgICAgIGJyZWFrOwogICAgfQogICAgeD14KjEwK2stJzAnOwogIH0KICBpZihtKXsKICAgIHg9LXg7CiAgfQp9CmlubGluZSB2b2lkIHJkKGRvdWJsZSAmeCl7CiAgaW50IGs7CiAgaW50IG09MDsKICBpbnQgcD0wOwogIGRvdWJsZSByID0gMTsKICB4ID0gMDsKICBmb3IoOzspewogICAgayA9IG15X2dldGNoYXJfdW5sb2NrZWQoKTsKICAgIGlmKGs9PSctJyl7CiAgICAgIG0gPSAxOwogICAgICBicmVhazsKICAgIH0KICAgIGlmKGs9PScuJyl7CiAgICAgIHAgPSAxOwogICAgICBicmVhazsKICAgIH0KICAgIGlmKCcwJzw9ayYmazw9JzknKXsKICAgICAgeCA9IGsgLSAnMCc7CiAgICAgIGJyZWFrOwogICAgfQogIH0KICBmb3IoOzspewogICAgayA9IG15X2dldGNoYXJfdW5sb2NrZWQoKTsKICAgIGlmKGs9PScuJyl7CiAgICAgIHAgPSAxOwogICAgICBjb250aW51ZTsKICAgIH0KICAgIGlmKGs8JzAnfHxrPic5Jyl7CiAgICAgIGJyZWFrOwogICAgfQogICAgaWYocCl7CiAgICAgIHIgKj0gMC4xOwogICAgICB4ICs9IHIgKiAoayAtICcwJyk7CiAgICB9CiAgICBlbHNlewogICAgICB4ID0geCAqIDEwICsgayAtICcwJzsKICAgIH0KICB9CiAgaWYobSl7CiAgICB4ID0gLXg7CiAgfQp9CnN0cnVjdCBNWV9XUklURVJ7CiAgY2hhciBidWZbMTA0ODU3Nl07CiAgaW50IHM7CiAgaW50IGU7CiAgTVlfV1JJVEVSKCl7CiAgICBzID0gMDsKICAgIGUgPSAxMDQ4NTc2OwogIH0KICB+TVlfV1JJVEVSKCl7CiAgICBpZihzKXsKICAgICAgZndyaXRlX3VubG9ja2VkKGJ1ZiwgMSwgcywgc3Rkb3V0KTsKICAgIH0KICB9Cn0KOwpNWV9XUklURVIgTVlfV1JJVEVSX1ZBUjsKdm9pZCBteV9wdXRjaGFyX3VubG9ja2VkKGludCBhKXsKICBpZihNWV9XUklURVJfVkFSLnMgPT0gTVlfV1JJVEVSX1ZBUi5lKXsKICAgIGZ3cml0ZV91bmxvY2tlZChNWV9XUklURVJfVkFSLmJ1ZiwgMSwgTVlfV1JJVEVSX1ZBUi5zLCBzdGRvdXQpOwogICAgTVlfV1JJVEVSX1ZBUi5zID0gMDsKICB9CiAgTVlfV1JJVEVSX1ZBUi5idWZbTVlfV1JJVEVSX1ZBUi5zKytdID0gYTsKfQppbmxpbmUgdm9pZCB3dF9MKGNoYXIgYSl7CiAgbXlfcHV0Y2hhcl91bmxvY2tlZChhKTsKfQppbnQgV1JJVEVSX0RPVUJMRV9ESUdJVCA9IDE1OwppbmxpbmUgaW50IHdyaXRlckRpZ2l0X2RvdWJsZSgpewogIHJldHVybiBXUklURVJfRE9VQkxFX0RJR0lUOwp9CmlubGluZSB2b2lkIHdyaXRlckRpZ2l0X2RvdWJsZShpbnQgZCl7CiAgV1JJVEVSX0RPVUJMRV9ESUdJVCA9IGQ7Cn0KaW5saW5lIHZvaWQgd3RfTChkb3VibGUgeCl7CiAgY29uc3QgaW50IGQgPSBXUklURVJfRE9VQkxFX0RJR0lUOwogIGludCBrOwogIGludCByOwogIGRvdWJsZSB2OwogIGlmKHghPXggfHwgKHg9PXgrMSAmJiB4PT0yKngpKXsKICAgIG15X3B1dGNoYXJfdW5sb2NrZWQoJ0UnKTsKICAgIG15X3B1dGNoYXJfdW5sb2NrZWQoJ3InKTsKICAgIG15X3B1dGNoYXJfdW5sb2NrZWQoJ3InKTsKICAgIHJldHVybjsKICB9CiAgaWYoeCA8IDApewogICAgbXlfcHV0Y2hhcl91bmxvY2tlZCgnLScpOwogICAgeCA9IC14OwogIH0KICB4ICs9IDAuNSAqIHBvdygwLjEsIGQpOwogIHIgPSAwOwogIHYgPSAxOwogIHdoaWxlKHggPj0gMTAqdil7CiAgICB2ICo9IDEwOwogICAgcisrOwogIH0KICB3aGlsZShyID49IDApewogICAgci0tOwogICAgayA9IGZsb29yKHggLyB2KTsKICAgIGlmKGsgPj0gMTApewogICAgICBrID0gOTsKICAgIH0KICAgIGlmKGsgPD0gLTEpewogICAgICBrID0gMDsKICAgIH0KICAgIHggLT0gayAqIHY7CiAgICB2ICo9IDAuMTsKICAgIG15X3B1dGNoYXJfdW5sb2NrZWQoayArICcwJyk7CiAgfQogIGlmKGQgPiAwKXsKICAgIG15X3B1dGNoYXJfdW5sb2NrZWQoJy4nKTsKICAgIHYgPSAxOwogICAgZm9yKHI9KDApO3I8KGQpO3IrKyl7CiAgICAgIHYgKj0gMC4xOwogICAgICBrID0gZmxvb3IoeCAvIHYpOwogICAgICBpZihrID49IDEwKXsKICAgICAgICBrID0gOTsKICAgICAgfQogICAgICBpZihrIDw9IC0xKXsKICAgICAgICBrID0gMDsKICAgICAgfQogICAgICB4IC09IGsgKiB2OwogICAgICBteV9wdXRjaGFyX3VubG9ja2VkKGsgKyAnMCcpOwogICAgfQogIH0KfQppbnQgTjsKZG91YmxlIFM7CmRvdWJsZSBBWzEwMDAwMF07CmRvdWJsZSBCWzEwMDAwMF07CmRvdWJsZSBDWzEwMDAwMF07CmludCBtYWluKCl7CiAgaW50IGk7CiAgZG91YmxlIHJlcyA9IDA7CiAgZG91YmxlIGQ7CiAgZG91YmxlIHVzOwogIGRvdWJsZSB0bXA7CiAgcmQoTik7CiAgcmQoUyk7CiAgewogICAgaW50IExqNFBkSFJXOwogICAgZm9yKExqNFBkSFJXPSgwKTtMajRQZEhSVzwoTik7TGo0UGRIUlcrKyl7CiAgICAgIHJkKEFbTGo0UGRIUlddKTsKICAgICAgcmQoQltMajRQZEhSV10pOwogICAgICByZChDW0xqNFBkSFJXXSk7CiAgICB9CiAgfQogIGRvdWJsZSBlOThXSENFWTsKICBkb3VibGUgY1RFMV9yM0E7CiAgZG91YmxlIFJaVHNDMkJGOwogIGU5OFdIQ0VZID0gMDsKICBjVEUxX3IzQSA9IDJlOTsKICBmb3IoOzspewogICAgaW50IGk7CiAgICBSWlRzQzJCRiA9IChlOThXSENFWSArIGNURTFfcjNBKSAvIDI7CiAgICBpZihSWlRzQzJCRiA9PSBlOThXSENFWSB8fCBSWlRzQzJCRiA9PSBjVEUxX3IzQSl7CiAgICAgIGJyZWFrOwogICAgfQogICAgdXMgPSAwOwogICAgZm9yKGk9KDApO2k8KE4pO2krKyl7CiAgICAgIHRtcCA9bWF4X0woKFJaVHNDMkJGIC0gQltpXSkgLyAoMipBW2ldKSwgMCk7CiAgICAgIHVzICs9IHRtcDsKICAgIH0KICAgIGlmKHVzIDwgUyl7CiAgICAgIGNURTFfcjNBID0gUlpUc0MyQkY7CiAgICB9CiAgICBlbHNlewogICAgICBlOThXSENFWSA9IFJaVHNDMkJGOwogICAgfQogIH0KICBkID0oKGU5OFdIQ0VZICsgY1RFMV9yM0EpIC8gMik7CiAgZm9yKGk9KDApO2k8KE4pO2krKyl7CiAgICB0bXAgPW1heF9MKChkIC0gQltpXSkgLyAoMipBW2ldKSwgMCk7CiAgICByZXMgKz0gQVtpXSAqIHRtcCAqIHRtcCArIEJbaV0gKiB0bXAgKyBDW2ldOwogIH0KICB3dF9MKHJlcyk7CiAgd3RfTCgnXG4nKTsKICByZXR1cm4gMDsKfQovLyBjTGF5IHZhcnNpb24gMjAyMDExMDItMQoKLy8gLS0tIG9yaWdpbmFsIGNvZGUgLS0tCi8vIGludCBOOwovLyBkb3VibGUgUywgQVsxZDVdLCBCWzFkNV0sIENbMWQ1XTsKLy8gewovLyAgIGRvdWJsZSByZXMgPSAwLCBkLCB1cywgdG1wOwovLyAgIHJkKE4sUywoQSxCLEMpKE4pKTsKLy8gICBkID0gYnNlYXJjaF9taW5bZG91YmxlLGQsMCwyZTldWwovLyAgICAgdXMgPSAwOwovLyAgICAgcmVwKGksTil7Ci8vICAgICAgIHRtcCA9IG1heCgoZCAtIEJbaV0pIC8gKDIqQVtpXSksIDApOwovLyAgICAgICB1cyArPSB0bXA7Ci8vICAgICB9Ci8vICAgXSh1cyA8IFMpOwovLyAgIHJlcChpLE4pewovLyAgICAgdG1wID0gbWF4KChkIC0gQltpXSkgLyAoMipBW2ldKSwgMCk7Ci8vICAgICByZXMgKz0gQVtpXSAqIHRtcCAqIHRtcCArIEJbaV0gKiB0bXAgKyBDW2ldOwovLyAgIH0KLy8gICB3dChyZXMpOwovLyB9Cg==