Problem:
MathJax.Hub.Config({ tex2jax: { inlineMath: [["$","$"], ["\\(","\\)"]], processEscapes: true }});

Circumscribed Circle of A Triangle.

Write a program which prints the central coordinate $(p_x, p_y)$ and the radius $r$ of a circumscribed circle of a triangle which is constructed by three points $(x_1, y_1)$, $(x_2, y_2)$ and $(x_3, y_3)$ on the plane surface.

Input

Input consists of several datasets. In the first line, the number of datasets $n$ is given. Each dataset consists of:

$x_1$ $y_1$ $x_2$ $y_2$ $x_3$ $y_3$

in a line. All the input are real numbers.

Output

For each dataset, print $p_x$, $p_y$ and $r$ separated by a space in a line. Print the solution to three places of decimals. Round off the solution to three decimal places.

Constraints

$-100 \leq x_1, y_1, x_2, y_2, x_3, y_3 \leq 100$

$ n \leq 20$

Sample Input

1
0.0 0.0 2.0 0.0 2.0 2.0

Output for the Sample Input

1.000 1.000 1.414

Solution in Ruby (judge verdict: Accepted)

gets
ARGF.each_line do |line|
  x1, y1, x2, y2, x3, y3 = line.split.map(&:to_f)
  
  px = -((y2 - y1) * y3**2 + (-y2**2 + y1**2 - x2**2 + x1**2) * y3 + y1 * y2**2 + (-y1**2 + x3**2 - x1**2) * y2 + (x2**2 - x3**2) * y1) /
        ((2 * x2 - 2 * x1) * y3 + (2 * x1 - 2 * x3) * y2 + (2 * x3 - 2 * x2) * y1)
  py = ((x2 - x1) * y3**2 + (x1 - x3) * y2**2 + (x3 - x2) * y1**2 + (x2 - x1) * x3**2 + (x1**2 - x2**2) * x3 + x1 * x2**2 - x1**2 * x2) /
       ((2 * x2 - 2 * x1) * y3 + (2 * x1 - 2 * x3) * y2 + (2 * x3 - 2 * x2) * y1)
  r = Math.sqrt((px - x1)**2 + (py - y1)**2)

  px = sprintf("%.3f", (px * 1000).round / 1000.0)
  py = sprintf("%.3f", (py * 1000).round / 1000.0)
  r  = sprintf("%.3f", (r  * 1000).round / 1000.0)
  puts [px, py, r].join("\s")
end