output_description: Print the minimum radius of a circle such that all the N points are inside or
  on it.
  
  Your output will be considered correct if the 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
      x_1 y_1
      :
      x_N y_N
attempt: import sys
  
  input = sys.stdin.readline
  
  
  def dist(x1, x2, y1, y2):
      return (y1 - y2) * (y1 - y2) + (x1 - x2) * (x1 - x2)
  
  
  def farthest(x, y):
      ret = 0
      point = (-1, -1)
      for u, v in X:
          d = dist(x, u, y, v)
          if d > ret:
              ret = d
              point = u, v
      return ret, point
  
  
  N = int(input())
  X = []
  for _ in [0] * N:
      x, y = map(int, input().split())
      X.append((x, y))
  
  x = (max(x for x, y in X) - min(x for x, y in X)) / 2
  y = (max(y for x, y in X) - min(y for x, y in X)) / 2
  step = 0.5
  o = 1
  eps = 10**-15
  while o > eps:
      _, (u, v) = farthest(x, y)
      x += (u - x) * step
      y += (v - y) * step
      step *= 0.99
      o = abs(u - x + x - y) * step
  
  ans, _ = farthest(x, y)
  ans **= 0.5
  print(ans)
  
problem_description: Statement
  
  Given are N points (x_i, y_i) in a two-dimensional plane.
  
  Find the minimum radius of a circle such that all the points are inside or on
  it.
samples: [{"input": "2\n    0 0\n    1 0", "output": "0.500000000000000000\n    \n\nBoth points are contained in the circle centered at (0.5,0) with a radius of\n0.5.\n\n* * *"}, {"input": "3\n    0 0\n    0 1\n    1 0", "output": "0.707106781186497524\n    \n\n* * *"}, {"input": "10\n    10 9\n    5 9\n    2 0\n    0 0\n    2 7\n    3 3\n    2 5\n    10 0\n    3 7\n    1 9", "output": "6.726812023536805158\n    \n\nIf the absolute or relative error from our answer is at most 10^{-6}, the\noutput will be considered correct."}]