[HNOI2019]鱼
[HNOI2019]鱼
传送门
Solution
枚举\(A\)点和\(D\)点,发现\(B,C\)点与\(E,F\)点间没有限制,那么考虑分开求\(B,C\)对与\(E,F\)对.
Part.1
求\(B,C\)点对的数量.
很明显\(AD\)是\(BC\)的中垂线,那么考虑枚举\(B,C\)点对,对于它的中垂线存下来.
在枚举\(A,D\)的时候可以用\(upper\_bound\)求出在范围内的.
Part.2
求\(E,F\)点对的数量.
考虑枚举\(D\)点,把其他点极角排序,那么可以用双指针对于每一个\(A\)点求出可行的\(E\),\(F\)点的数量.
可以用\(map\)把对应距离的都存下来.
代码
u1s1,这题我\(eps\)开\(1e-7\)就\(Wa\),开\(1e-10\)就\(AC\)khx.
Code