bzoj#P1007. [HNOI2008] 水平可见直线

[HNOI2008] 水平可见直线

题目描述

xOyxOy 直角坐标平面上有 nn 条直线 L1,L2,,LnL_1, L_2, \dots, L_n,若在 yy 值为正无穷大处往下看,能见到 LiL_i 的某个子线段,则称 LiL_i 为可见的,否则 LiL_i 为被覆盖的。

例如,对于直线 L1:y=xL_1: y = xL2:y=xL_2: y = -xL3:y=0L_3: y = 0,则 L1L_1L2L_2 是可见的,L3L_3 是被覆盖的。

给出 nn 条直线,表示成 y=ax+by = ax + b 的形式,且 nn 条直线两两不重合。求出所有可见的直线。

输入格式

第一行为 nn,接下来的 nn 行输入 ai,bia_i, b_i

输出格式

从小到大输出可见直线的编号,两两中间用空格隔开,最后一个数字后面也必须有个空格。

3
-1 0
1 0
0 0
1 2

数据范围

对于 100%100\% 的数据,0<n<5×1040 < n < 5 \times 10^40A,B5×1050 \le |A|, |B| \le 5 \times 10^5