📅  最后修改于: 2023-12-03 15:07:35.014000             🧑  作者: Mango
这个问题可以通过使用贪心算法来解决,具体做法如下:
def solve(rects):
# 对矩形按照从小到大的顺序排序
rects.sort(key=lambda x: (x[0], x[1]))
n = len(rects)
# 定义一个数组 LIS,里面记录的是当前考虑的所有矩形的最长上升子序列长度
lis = [1] * n
for i in range(1, n):
for j in range(i):
if rects[i][1] > rects[j][1] and lis[i] < lis[j] + 1:
lis[i] = lis[j] + 1
return max(lis)
以上就是这个问题的解法,希望对大家有所帮助!