poj1755 半平面交解不等式组

博客介绍了如何利用半平面交算法解决POJ1755问题,即在铁人三项比赛中判断通过调整路程是否能让人获胜。通过将三维问题转化为二维,用向量表示半平面并应用ZZY的I&S算法模板来判断不等式组是否有解。文章还讨论了如何处理向量和确保半平面符号一致。
摘要由CSDN通过智能技术生成

题目链接:http://poj.org/problem?id=1755

题意:铁人三项比赛,给出n个人进行每一项的速度vi, ui, wi;  对每个人判断,通过改变3项比赛的路程,是否能让该人获胜(严格获胜)。

思路:题目实际上是给出了n个式子方程,Ti  = Ai * x + Bi * y + Ci * z , 0 < i < n

          要判断第i个人能否获胜,即判断不等式组   Tj - Ti > 0,      0 < j < n && j != i    有解

        即 (Aj - Ai)* x + (Bj - Bi) * y + ( Cj - Ci ) * z > 0,   0 < j < n && j != i 有解

         由于 z > 0, 所以 可以两边同时除以 z, 将 x / z, y / z 分别看成 x和 y , 这样就化三维为二维,可用半平面交判断是否存在解了,

         对每个人构造一次,求一次半平面交即可。

我用的ZZY的 I&S算法的模版,做的过程中要将A*x + B * y + C > 0表示的半平面,转化成由两点组成的向量表示, IQ问题,纠结挺久

首先,所有的半平面保证符号一致(我取的> ), 然后

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值