Triathlon
1062. Triathlon @ Timus Online Judge
一道不错的半平面交好题。
这里主要记录的不是题解,而是我自己的解题过程以及没做出来的发泄,主要面向群众是我自己,如果想要看题解请移步其余题解,请见谅。
首先,这道题目看到的第一个思想是如果有人三项比起都高,那么其就是NO,否则YES,肉眼可见的错误。
考虑枚举每个人与其余人的插值:
设 $a’_i=\frac{1}{a_i}$ ,其余类似。
那么其实就是要求 $(a’_i-a_j)x+(b’_i-b_j)y+(c’_i-c_j)z≥0$
这条式子我当时以为是半立体交,不会,打算学,但是没找到。
发现必过 $(0,0,0)$ 点,没用,发现用一个平面截其实就是半平面交,推测可以证明只用有限个半平面交就能验证或者得出答案,但是思考了良久系数间的关系,什么结论证明都没有想出来,绝望了起来。
看了眼题解,标题半平面交,吓的我立马关掉。
总觉得三维不好想,先想想二维然后推广至三维,当把二维图一想,人傻了,如果 $(x,y)$ 可以,$(\frac{x}{2},\frac{y}{2})$ 也可以,也就是一条直线都可以,因此直接假定 $x=1$ 然后半平面交即可。
为什么没做出来?
三维空间想象能力太差,在做题的时候总是忘记可以先思考低维做法然后再推向高维,同时对于结论不够敏感。
总而言之就是我太弟了,菜!
呜呜呜┭┮﹏┭┮
代码后面补,不太想打了。
1 |
不过平心而论,确实妙,过 $(0,0,0)$ 点的半立体交因为如果 $(x,y,z)$ 在区域内,那么 $(kx,ky,kz)$ 也在区域内,所以一定是一个类似锥体的东西从原点发射出去,所以随便选定一个 $x$ 然后跑半平面交即可,这样就实现了 $3->2$ 的降维打击。
本博客所有文章除特别声明外,均采用 CC BY-NC-SA 4.0 许可协议。转载请注明来自 Oldplace!
评论