题解 | 校门外的树
校门外的树
https://www.nowcoder.com/practice/0e8cfc82936048769af45967f3c4ef7e
import sys
L, M = map(int, input().split())
total = L + 1
repeat_list = []
erea_d = {}
for i in range(M):
b, e = map(int, input().split())
erea_d[b] = e
erea_new = {key: erea_d[key] for key in sorted(erea_d)}
# print("sorted",erea_new)
keys = list(erea_new.keys())
begin, end =keys[0], erea_new[keys[0]]
for i in range(1, len(keys)):
if keys[i] <= end:
end = max(end, erea_new[keys[i]])
else:
repeat_list.append(int(end-begin)+1)
begin, end =keys[i], erea_new[keys[i]]
repeat_list.append(int(end-begin)+1)
# print(repeat_list)
del_t = 0
for i in repeat_list:
del_t += i
print(total - del_t)
查看1道真题和解析