编程题
### 问题描述 小齐需要你的帮助,决定在他的农场里建一条直线形状的围栏,以帮助限制奶牛的活动。他已经考虑了几个可能的围栏位置,需要你帮忙确定哪些是可用的。当且仅当一条围栏上没有奶牛时,它才被认为是可用的。如果新添一头奶牛,以后的围栏查询都将考虑她,围栏仅在她与其他奶牛在同一侧时才可用。 ### 输入格式 第一行输入 $N$(初始奶牛数量)和 $Q$(查询次数),用空格分隔。 接下来 $N$ 行描述了奶牛的初始位置,每行包含两个用空格分隔的整数 $x$ 和 $y$。 接下来的 $Q$ 行包含查询,可以是添加新奶牛到牛群或测试围栏的可用性。形如 $1 x y$ 的行表示添加一头奶牛,位置为 $(x, y)$。形如 $2 A B C$ 的行表示小齐希望测试围栏,其方程为 $Ax + By = C$。 所有奶牛的位置在整个数据集中是唯一的。此外,不会有 $A = B = 0$ 的围栏查询。 ### 输出格式 对于每个围栏查询,如果围栏可用,则输出 $YES$;否则输出 $NO$。 ### 样例输入 ``` 3 4 0 0 0 1 1 0 2 2 2 3 1 1 1 2 2 2 3 2 0 1 1 ``` ### 样例输出 ``` YES NO NO ``` ### 评测数据规模 $-10^9 \leq x, y \leq 10^9$,$-10^9 \leq A, B \leq 10^9$,$-10^{18} \leq C \leq 10^{18}$。
查看答案
赣ICP备20007335号-2