题意:铁人三项比赛,给出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 , 这样就化三维为二维,可用半平面交判断是否存在解了,
对每个人构造一次,求一次半平面交即可。
关键是根据这个斜率式子怎么搞成向量的。需要想一想。
然后注意的是半平面交出来是单独一个点是不行的。
因为题目要求的是严格胜出
#include
#include
#include
#include
#include
#include
#include
#include