n, m, s = list(map(int, input().split()))
p = []
for i in range(m):
l, r = list(map(int, input().split()))
p.append([l,r])
p.sort()
i = 0
while True:
if i+1<len(p):
a, b = p[i]
c, d = p[i+1]
if b+1>=c:
p[i] = [a, max(b,d)]
del p[i+1]
else:
i+=1
else:
break
sz = -1
for j in range(len(p)):
if p[j][0]<=s:
sz+=1
else:
break
if p[sz][0]==1:
print(p[sz][1]+1)
elif p[sz][1]==n:
print(p[sz][0]-1)
else:
q = p[sz][0]-1
w = p[sz][1]+1
if w-s<s-q:
print(w)
else:
print(q)
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 | n, m, s = list(map(int, input().split())) p = [] for i in range(m): l, r = list(map(int, input().split())) p.append([l,r]) p.sort() i = 0 while True: if i+1<len(p): a, b = p[i] c, d = p[i+1] if b+1>=c: p[i] = [a, max(b,d)] del p[i+1] else: i+=1 else: break sz = -1 for j in range(len(p)): if p[j][0]<=s: sz+=1 else: break if p[sz][0]==1: print(p[sz][1]+1) elif p[sz][1]==n: print(p[sz][0]-1) else: q = p[sz][0]-1 w = p[sz][1]+1 if w-s<s-q: print(w) else: print(q) |
English