Problem8564--CGL_7_D : Cross Points of a Circe and a Line

8564: CGL_7_D : Cross Points of a Circe and a Line

[Creator : ]
Time Limit : 1.000 sec  Memory Limit : 256 MiB  Special Judge

Description

For given a circle $c$ and a line $l$, print the coordinates of the cross points of them.

Input

The input is given in the following format.
$c_x\ c_y\ r$
$q$
Line$_1$
Line$_2$
$:$
Line$_q$
In the first line, the center coordinate of the circle and its radius are given by $c_x, c_y$ and $r$. 
In the second line, the number of queries $q$ is given.
In the following $q$ lines, as queries, Line$_i$ are given $(1≤i≤q)$ in the following format.
$x_1\ y_1\ x_2\ y_2$
Each line is represented by two points $p_1$ and $p_2$ which the line crosses. The coordinate of $p_1$ and $p_2$ are given by $(x_1, y_1)$ and $(x_2, y_2)$ respectively. All input values are given in integers.

Output

For each query, print the coordinates of the cross points in the following rules.
  • If there is one cross point, print two coordinates with the same values.
  • Print the coordinate with smaller $x$ first. In case of a tie, print the coordinate with smaller $y$ first.
The output values should be in a decimal fraction with an error less than 0.000001.

Constraints

$p_1$ and $p_2$ are different
The circle and line have at least one cross point
$1≤q≤1,000$
$−10,000≤c_x,c_y,x_1,y_1,x_2,y_2≤10,000$
$1≤r≤10,000$

Sample 1 Input

2 1 1
2
0 1 4 1
3 0 3 3

Sample 1 Output

1.00000000 1.00000000 3.00000000 1.00000000
3.00000000 1.00000000 3.00000000 1.00000000

HINT

相同题目:CGL_7_D

Source/Category