有n个有序的集合,集合的每个元素都是一段范围,求n个集合的交集,例如n=3,集合{[2,4],[9,13]}和{[6,12]}的并集为{[2,4],[6,13]},请问用python怎么实现
2 回答
慕哥6287543
TA贡献1831条经验 获得超10个赞
第一步排序,第二步遍历。#-*-coding:utf-8-*-data=[[1,2],[2,3],[1,6],[1,3],[3,7],[3,6],[3,8],[3,7],[10,12],[110,290],[50,60],[49,55],]defsort(a,b):ifa[0]>b[0]:return1ifa[0]ifa[1]>b[1]:return1ifa[1]return1data.sort(sort)result=[]fora,bindata:ifnotresult:result.append([a,b])continuela,lb=result[-1]ifla<=a<=lbandb>lb:result[-1][1]=bifa>lb:result.append([a,b])printresult
添加回答
举报
0/150
提交
取消