fork(1) download
  1. from math import sqrt
  2.  
  3. c1x, c1y, c1r = map(int, input().split(","))
  4. print("Circle 1: x={} y={} r={}".format(c1x, c1y, c1r))
  5. c2x, c2y, c2r = map(int, input().split(","))
  6. print("Circle 2: x={} y={} r={}".format(c2x, c2y, c2r))
  7.  
  8. (cax, caxr), (cbx, cbxr) = sorted([(c1x, c1r), (c2x, c2r)], key=lambda t:t[0])
  9. (cay, cayr), (cby, cbyr) = sorted([(c1y, c1r), (c2y, c2r)], key=lambda t:t[0])
  10.  
  11. x = (cax-caxr + cbx+cbxr) / 2
  12. y = (cay-cayr + cby+cbyr) / 2
  13.  
  14. r = sqrt( ((cax-caxr) - (cbx+cbxr))**2 + ((cay-cayr) + (cby+cbyr))**2 ) / 2
  15.  
  16. print("Enclosing circle: x={} y={} r={}".format(x, y, r))
Success #stdin #stdout 0.02s 9984KB
stdin
1,-7,5
11,4,3
stdout
Circle 1: x=1 y=-7 r=5
Circle 2: x=11 y=4 r=3
Enclosing circle: x=5.0 y=-2.5 r=9.340770846134703