解题思路:
注意事项:
参考代码:
n=int(input())
t=[]
a=1#互相兼容的活动数量
for i in range(n):
t.append(input().split())
for i in range(n):
for j in range(2):
t[i][j]=int(t[i][j])
t.sort(key=lambda x:x[1])#按照活动结束的时间进行升序排列
for i in range(n-1):
if t[i][0]==t[i+1][0]:
if t[i][1]>t[i+1][1]:
t[i][1],t[i+1][1]=t[i+1][1],t[i][1]#左端点相同,将结束时间晚的放在后面
lastx=t[0][1]
for k in range(1,n):
if t[k][0]>=lastx:#某一个活动的开始时间在 最早结束的活动的 结束时间后面
lastx=t[k][1]#指针指向该活动的结束时间
a+=1
print(a)
0.0分
0 人评分