{
return a>b;
}
sort(a,a+n,cmp);
#include<stdio.h>
#include<math.h>
#include<algorithm>
using namespace std;
struct dd
{
double d;
int p;
}a[1005];
typedef struct dd dd;
bool cmp(dd q,dd b)
{
return q.d<b.d;
}
int main()
{
int s,n,p,sum;
while(scanf("%d%d",&n,&s)!=EOF)
{
for(int i=0;i<n;i++)
{
int x,y;
scanf("%d%d%d",&x,&y,&a[i].p);
a[i].d=sqrt(x*x+y*y);
}
sort(a,a+n,cmp);
sum=s;
for(int i=0;i<n;i++)
{
sum=sum+a[i].p;
if(sum>=1000000)
{
printf("%.7lf\n",a[i].d);
break;
}
}
if(sum<1000000)
printf("-1\n");
}
return 0;
}