小明在抖音关注了N个主播,每天主播的开播时间是固定的,分别在si时刻开始直播,ti时刻结束。小明无法同时观看两个主播的直播。一天被分成了M个时间单位。请问小明每天最多能完整观看多少场直播。
输入描述:
第一行一个整数,代表N
第二行一个整数,代表M
第三行空格分割的N*2个整数,代表s,t
输出描述:
一行一个整数,表示答案
示例1:输入
3
10
0 3 3 7 7 0
输出
3
示例2:输入
3
10
0 5 2 7 6 9
输出
2
分析:首先建立二维数组,按照开播时间排序,示例1得[[0,5],[2,7],[6,9]],第一组不一定是最开始看的,因为有可能第一组时间过长。应包含从第2,3,4,5.....组开始看的情况,选出结果最大值。
N=3
M=10
st=[[0,5],[2,7],[6,9]]
resm=[0]*len(st)
if st[N-1][1]==0:
st[N-1][1]=M
end=st[N-1][1]
for m in range(N):
res=1
endtime=st[m][1]
i=0
while(endtime<end):
i=i+1
if i>=N: break
if st[i][0]>=endtime:
endtime=st[i][1]
#print(i+1)
res=res+1
resm[m]=res
#print(resm)
print("最多能完整观看"+str(max(resm))+"个直播")