Orz lzz。
挺神奇的东西,网上没有多少资料,我也不是太懂,代码什么的都没写过,那就抄一下百度百科吧
定义
设在平面内给定一点(O)和常数(k)((k ot= 0)),对于平面内任意一点(A),确定(A'),使(A')在直线(OA)上一点,并且有向线段(OA)与(OA')满足(OA cdot OA'=k),我们称这种变换是以(O)为的反演中心,以(k)为反演幂的反演变换,简称反演。称(A')为(A)关于(O(r))的互为反演点。
当(k>0)时,有向线段(OA)与(OA')同向,(A)与(A')在反演极同侧,这种反演变换称为正幂反演,亦叫双曲线式反演变换。
当(k<0)时,有向线段(OA)与(OA')反向,(A)与(A')在反演极异侧,这种反演变换称为负幂反演,亦叫椭圆式反演变换。
性质
信息学中有几条常用的正幂反演的性质
这里的原点指的是反演中心
-
过原点的直线反演后仍为过原点的直线
-
不过原点的直线反演后为过原点的圆
-
过原点的圆反演后为不过原点的直线
-
不过原点的圆反演后为不过反演中心的圆
因此很多关于圆的题目可以转化为直线问题来做
一道题目。
给一个点集,问有多少个三元组,和原点四点共圆
• (N leqslant1000).
对点进行反演,问题就转化为了三点共线问题