Загрузка данных


import math

n, k = map(int, input().split())

pts = []
for _ in range(n):
    x, y = map(float, input().split())
    pts.append((x, y))

l = 0.0
r = 2000.0

for _ in range(70):
    m = (l + r) / 2

    events = []

    for x, y in pts:
        if abs(y) <= m:
            d = math.sqrt(m * m - y * y)
            events.append((x - d, 1))
            events.append((x + d, -1))

    events.sort(key=lambda p: (p[0], -p[1]))

    cur = 0
    ok = False

    for pos, typ in events:
        cur += typ
        if cur >= k:
            ok = True
            break

    if ok:
        r = m
    else:
        l = m

print(f"{r:.10f}")