赞
踩
题目传送门
在经历了 Day1 的爆炸之后,zb说 Day2 能翻,我信了……
看到 T1,我还真信了……
考虑平面内判断两圆位置关系的方法,是将圆心距和半径和进行比较,那么推广到空间中,这种方法也同样适用。如果球心距小于等于两球半径之和,则这两个球就是连通的。
我们用并查集将两个连通的球并起来,如果球心竖坐标在
[
−
r
,
r
]
[-r,r]
[−r,r] 之间,则说明可以从下底面进入这个球,如果球心竖坐标在
[
h
−
r
,
h
+
r
]
[h-r,h+r]
[h−r,h+r] 之间,则说明可以送这个球出去到上底面,这样建立虚拟的节点上下底面,最后判断上下底面是否连通即可。
注意到爆 long long 的问题,可以通过巧妙的移项处理,避免这个问题。
(但是我没有考虑在洛谷上居然 A 了……
时间复杂度
O
(
T
n
2
)
O(Tn^2)
O(Tn2)
Code
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。