2022年4月26日 星期二

線段覆蓋長度

 d = [0 for i in range(1000+1)]

instr = '''5

160 180

150 200

280 300

300 330

190 210'''

d1 = [i for i in instr.strip().split()]

n = int(d1[0])

# d1.remove(d1[0])

d1.pop(0)

d1 = [int(i) for i in d1]

d2 = []

for i in range(0,len(d1),2):

    t = [d1[i],d1[i+1]]

    d2.append(t)


for i in d2:

    a,b = i[0],i[1]

    for j in range(a,b+1):

        d[j] = 1


d = [str(i) for i in d]

d = ''.join(d)

d = d.split('0')

d = [i for i in d if i!='']


s = 0

for i in d:

    t = i.split('2')

    t = [i for i in t if i!='']

    p = [i.count('1')-1 for i in t]

    s+=sum(p)

print(s)

沒有留言:

張貼留言