五点共圆

时间限制: 1000 ms 内存限制: 65536 kb
总通过人数: 0 总提交人数: 0

题目描述

红星闪闪放光彩,红星灿灿暖胸怀。红星是咱工农的心,党的光辉照万代。

1974年老电影《闪闪的红星》,介绍了在1930年至1939年艰难困苦的环境中成长起来的少年英雄潘冬子的故事。机智的潘冬子与大地主胡汉三周旋,体现出的勇气和正义影响了一代人。

你知道吗?任意一个星形,五个三角形,外接圆交于五点。总有:这五点共圆。

五点共圆

那么,试着把这个圆算出来吧!

输入

五个坐标,共10个浮点数,分别是五角星五个顶点的坐标。每个坐标的横坐标在前,纵坐标在后。坐标按照顺时针或者逆时针转一圈的方式给出,即假如给出坐标顺序是12345,则星形一笔连线顺序是13524。

输出

一个方程,即待求的圆的标准方程,只需要输出一次项与常数项系数即可。系数保留5位小数,系数之间各有一个空格。

例如,假如待求的圆的方程是 $x^2+y^2-x-y-1=0$ ,就需要输出后三项系数 $-1$, $-1$, $-1$,并且都要保留 $5$ 位小数。

数据范围

每个点横纵坐标的绝对值在 $10$ 之内。输入样例保证构成合法的五角星。

输入样例

0.0 1.0
0.951056516295153572 0.309016994374947424
0.587785252292473129 -0.809016994374947424
-0.587785252292473129 -0.809016994374947424
-0.951056516295153572 0.309016994374947424

输出样例

0.00000 0.00000 -0.38197

样例解释

这个样例是正五角星。

Hint

eps可以取1e-12。

求解过3点的圆可以考虑Cramer's Rule:圆的标准方程是

$$x^2+y^2+Dx+Ey+F=0$$

假如通过某三点,根据Cramer's Rule,可以解得相应系数:

$$D=\frac{\left|\begin{array}{l} -({x_1}^2+{y_1}^2) & y_1 & 1 \\ -({x_2}^2+{y_2}^2) & y_2 & 1 \\ -({x_3}^2+{y_3}^2) & y_3 & 1 \end{array}\right|}{\left|\begin{array}{l} x_1 & y_1 & 1 \\ x_2 & y_2 & 1 \\ x_3 & y_3 & 1 \end{array}\right|}$$

对于两圆的交点,既可以靠解二次方程计算解出,也可以使用韦达定理等巧妙的方法。

注意:四舍五入到0可能会出现-0.00000,那么这个时候应该怎么办?

Author:助教LCY

相关推荐