from math import sqrt
import bisect
n, S = map(int, input().split())
points = [list(map(int, input().split())) for _ in range(n)]
# 按到原点的距离排序
points.sort(key=lambda x: x[0]**2 + x[1]**2)
# 计算前缀和
values = [points[0][2]]
for i in range(1, n):
values.append(values[-1] + points[i][2])
# 总和小于s无解
if values[-1] < S:
print(-1)
else:
# 使用二分查找
idx = bisect.bisect_left(values, S)
x, y = points[idx][0], points[idx][1]
print(sqrt(x**2 + y**2))

京公网安备 11010502036488号