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 PHP (judge verdict: Accepted)

<?php
	fscanf(STDIN, "%d", $n);

	for($i = 0; $i < $n; $i++) {
		fscanf(STDIN, "%lf %lf %lf %lf %lf %lf", $x1, $y1, $x2, $y2, $x3, $y3);
		$a1 = 2 * ($x2 - $x1);
		$b1 = 2 * ($y2 - $y1);
		$c1 = $x1 * $x1 - $x2 * $x2 + $y1 *$y1 - $y2 * $y2;
		$a2 = 2 * ($x3 - $x1);
		$b2 = 2 * ($y3 - $y1);
		$c2 = $x1 * $x1 - $x3 * $x3 + $y1 *$y1 - $y3 * $y3;

		$x = ($b1 * $c2 - $b2 * $c1) / ($a1 * $b2 - $a2 * $b1);
		$y = ($c1 * $a2 - $c2 * $a1) / ($a1 * $b2 - $a2 * $b1);
		$r = sqrt(($x - $x1) * ($x - $x1) + ($y - $y1) * ($y - $y1));

		printf("%.3f %.3f %.3f\n", $x, $y, $r);
	}
?>