output_description: Print the answer.
  
  It will be considered correct if its absolute or relative error from our
  answer is at most 10^{-6}.
  
  * * *
input_description: Input is given from Standard Input in the following format:
  
      
      
      N K
      x_1 y_1 c_1
      \vdots
      x_N y_N c_N
attempt: import sys
  
  input = sys.stdin.readline
  
  n, K = map(int, input().split())
  x = []
  y = []
  c = []
  pc = []
  
  for i in range(n):
      xx, yy, cc = map(int, input().split())
      x.append(xx)
      y.append(yy)
      c.append(1.0 / cc)
      pc.append(cc)
  
  esp = 0.000000001
  
  
  def timecount(px, py, time):
      cnt = 0
      for i in range(n):
          tmp = pc[i] * ((x[i] - px) ** 2 + (y[i] - py) ** 2) ** 0.5
          if tmp - esp <= time:
              cnt += 1
      return cnt >= K
  
  
  res = 10**9
  
  
  for i in range(n):
      for j in range(i + 1, n):
          p, q = c[i], c[j]
          px, py = (q * x[i] + p * x[j]) / (p + q), (q * y[i] + p * y[j]) / (p + q)
          time = pc[i] * ((x[i] - px) ** 2 + (y[i] - py) ** 2) ** 0.5
          # print(i,j,px,py,time)
          if timecount(px, py, time):
              res = min(res, time)
  
  
  for i in range(n):
      for j in range(i + 1, n):
          for k in range(j + 1, n):
              s = c[i] + c[j] + c[k]
              A = c[i] * 2 / s
              B = c[j] * 2 / s
              C = c[k] * 2 / s
              p = 1 - A
              q = C - 1 + A
              r = B - 1 + A
              px, py = (p * x[i] + q * x[j] + r * x[k]) / (p + q + r), (
                  p * y[i] + q * y[j] + r * y[k]
              ) / (p + q + r)
              time = max(
                  pc[i] * ((x[i] - px) ** 2 + (y[i] - py) ** 2) ** 0.5,
                  pc[j] * ((x[j] - px) ** 2 + (y[j] - py) ** 2) ** 0.5,
                  pc[k] * ((x[k] - px) ** 2 + (y[k] - py) ** 2) ** 0.5,
              )
              # print(i,j,k,px,py,time)
              if timecount(px, py, time):
                  res = min(res, time)
  print(res)
  
problem_description: Statement
  
  Takahashi wants to grill N pieces of meat on a grilling net, which can be seen
  as a two-dimensional plane. The coordinates of the i-th piece of meat are
  \left(x_i, y_i\right), and its _hardness_ is c_i.
  
  Takahashi can use one heat source to grill the meat. If he puts the heat
  source at coordinates \left(X, Y\right), where X and Y are real numbers, the
  i-th piece of meat will be ready to eat in c_i \times \sqrt{\left(X -
  x_i\right)^2 + \left(Y-y_i\right)^2} seconds.
  
  Takahashi wants to eat K pieces of meat. Find the time required to have K or
  more pieces of meat ready if he put the heat source to minimize this time.
samples: [{"input": "4 3\n    -1 0 3\n    0 0 3\n    1 0 2\n    1 1 40", "output": "2.4\n    \n\nIf we put the heat source at \\left(-0.2, 0\\right), the 1-st, 2-nd, and 3-rd\npieces of meat will be ready to eat within 2.4 seconds. This is the optimal\nplace to put the heat source.\n\n* * *"}, {"input": "10 5\n    -879 981 26\n    890 -406 81\n    512 859 97\n    362 -955 25\n    128 553 17\n    -885 763 2\n    449 310 57\n    -656 -204 11\n    -270 76 40\n    184 170 16", "output": "7411.2252"}]