
圆的反演
二分抄代码
去了18ec没资格去19ec的反向训练选手
展开
-
2019ICPC沈阳现场赛 E Capture Stars 圆的反演
https://ac.nowcoder.com/acm/contest/7830/D 感觉沈阳的惨败都是上个世纪的事情了。。。刚好牛客国庆集训3把沈阳的题放出来了,拿出来补补,就是个圆的反演水题,当时很多队很早就过了,然而最后也就那么多人过,因为2018-2019年的各种比赛题目中没出现过 这题就拿(0,0),半径为2*R当反演圆,然后两个过切点的圆反演过去就是两条直线,吧所有点反演过去就是直线之间的点,因为望远镜的区域跟原来的大圆小圆相切并夹在中间,反演过去就也是夹在中间相切的,半径就知道了,横坐标也原创 2020-10-11 01:28:58 · 305 阅读 · 0 评论 -
codeforces77E Martian Food
https://codeforces.com/problemset/problem/77/E 索然无味,就是hdu6158 然而这题在当年的难度是2800分,说明当时还没人会,然后被2013杭州出了以后,2017年被各种比赛出,圆的反演就已经well Known了 #include<bits/stdc++.h> using namespace std; const double eps=1e-10; inline int sgn(int x) { if(x>-eps || x原创 2020-05-13 18:29:23 · 294 阅读 · 0 评论 -
CodeChef2015July挑战赛 NTHCIR
https://www.codechef.com/problems/NTHCIR 会发现所有的圆都跟c1和c2相切 那么以c1,c2的切点(0,c1.r)为反演点,反演半径为2*c1.r(这个随便选),反演出两条直线y=ky和y=ry,c3-cn都跟ci-1和c1,c2相切,那么就是半径为(uy-ly)/2的圆从左到右排列过去了。 由于c1.r>=c2.r+c3.r,那么可以用余弦公式求出角度的cos和sin值(杨程好习惯,尽量不用反三角函数),然后把c3.o的坐标算出来,反演过去,就知道c3的原创 2020-05-13 17:03:49 · 304 阅读 · 4 评论 -
2017 ACM-ICPC 亚洲区(南宁赛区)网络赛 G Finding the Radius for an Inserted Circle
https://nanti.jisuanke.com/t/A1283 怎么圆的反演全是2017出的题 以上面两个圆的切点为反演点,反演半径为R,那么左右两个圆就变成了lx=-R/2和rx=R/2的两条垂直的直线 然后与这左右两个圆相切的就是夹在两条直线之间的,又因为与下面的圆也相切,所以所有圆的半径都是R/2,纵坐标减一减就行 #include<bits/stdc++.h> using namespace std; const double eps=1e-7; inline int原创 2020-05-13 15:39:40 · 269 阅读 · 0 评论 -
hdu6158 The Designer
http://acm.hdu.edu.cn/showproblem.php?pid=6158 三角函数尤其是反三角函数又慢精度又差,能用比例向量和叉积甚至x/sqrt(sqr(x)+sqr(y))这种形式都比反三角函数好 这题以两个圆的左边切点为反演中心,大圆的直径为R,大圆的反演结果就是与大圆相切的一条直线,小圆就是更远处的直线,由于反演后的相切性不变,所以3个原反演出2条直线夹着一串圆,而且这些圆也要相切,他们的直径是rx-lx #include<bits/stdc++.h> usi原创 2020-05-13 02:23:21 · 200 阅读 · 0 评论 -
hdu6097 Mindis
http://acm.hdu.edu.cn/showproblem.php?pid=6097 我发现仅仅看着那些圆的反演的性质,然而还是不会做题。。。。 我们把p点对圆c进行反演得到p2,对q进行反演得到q2, 由于三角形ODP~三角形OP2D,因为|OD|*|OD|=r^2=|OP|*|OP2|,所以相似,那么|PD|/|DP2|=|OD|/|OP2| 这样P2D+Q2D最小就等价于PD+QD最小 那么P2Q2如果与圆有交点,那么两点之间线段最短,D就是与圆的交点 否则,则是道P2Q2的中垂线原创 2020-05-12 16:44:55 · 194 阅读 · 0 评论 -
hdu4773 Problem of Apollonius
http://acm.hdu.edu.cn/showproblem.php?pid=4773 2017ccpc网络赛的时候,我跟szh因为精度不够没过的那道几何题,后来听GB说是要圆的反演,可以提高精度,甚至可以把圆变成线来做。然而我19年学几何的时候忘记了这个知识点,结果19沈阳就出现了,拿坐标公式在那里硬搞。。 今天终于想起来了,代码和思路均来自https://www.cnblogs.com/NineSwords/p/9225187.html 写的非常好,我突然发现我甚至没写过两个圆的公切线怎么求原创 2020-05-12 01:44:56 · 211 阅读 · 0 评论