我们知道,若两条线段平行,则它们的斜率一定相同。
于是本题的答案就是每条线段的斜率去重之后的个数。
具体地,若一条线段的两个端点分别为 \((x_1,y_1)\) 和 \((x_2,y_2)\),则此线段的斜率为
\[\dfrac{(y_1-y_2)}{(x_1-x_2)}
\]
特别的,若 \(x_1=x_2\),则斜率为 \(\infty\)(即一个极大值)。
于是,我们利用 \(\text{STL set}\) 天生去重的特性,朴素枚举每条线段计算其斜率,并插入 \(\text{set}\) 中,最后 \(\text{set}\) 的大小即为答案。
对于每组数据,时间复杂度为 \(O(n^2)\),可以接受。