问题描述
平面上有 NN 条直线,其中第 ii 条直线是y=Ai×x+Bi。
请计算这些直线将平面分成了几个部分。
输入描述
第一行包含一个整数 N。
以下 NN 行,每行包含两个整数 Ai, Bi。
其中,1<= N<=1000, −10^5 <= Ai,Bi <= 10^5。
输出描述
一个整数代表答案。
解题思路
在平面上画一条新直线,与其他在平面上的直线会有三种关系:
1、平行
2、相交
3、重合
第三种情况,新的直线与其他直线重合,不影响直线对平面的分割。
第一和第二种情况,不管相交或平行,对于平面都会加1块。然后新直线与其他直线有几个交点就增加多少块。
具体方法
代码
#include<iostream>
#include<map>
#include<set>
using namespace std;
set < pair<double</