小美想要有一维坐标系x轴上画上尽可能多的圆,但是这些圆的位置不能存在相交、相切、内含这三种情况
小塔给了n个圆心的位置和对应的半径,显然地,这些圆之间位置关系不一定会满足上面的情况,因此小美想通过删除一些圆来使得自己能够画尽可能多的圆。
小美想知道自己最多能画的圆的个数,你能帮帮她吗?
其实是一个比较简单的最大不相交区间数量问题,因为所有圆的圆心都在同一条线上,那么每一个圆的左右与坐标轴相交的地方就是左右端点,将圆看作一个区间,所有圆不相交不重合就是所有的区间都相互分离,那么问题就是在许多的区间中选出一部分区间使得选出的区间不相交并使选出的区间数量最大,这其实一个经典的问题,只需要按照区间右端点进行排序,然后从左至右进行贪心的选取即可,具体证明可以自行了解
# leetcode 435. 无重叠区间
n = int(input())
lines = []
for _ in range(n):