linijka= input().split()
N = int(linijka[0]) #ilość budynków na ulicy
M = int(linijka[1]) #ilośc budynków zajętych
S = int(linijka[2]) #szkoła, zawsze zajęta
def zajete():
budynki = [True for _ in range(N+1)] #budynek 0 zawsze nie zajęty, ale to dlatego, żeby index był numerem budynku
for _ in range(M):
linia = input().split()
li = int(linia[0])
ri = int(linia[1])
for x in range(li,ri+1):
budynki[x] = False
return budynki
def mieszkanie(budynki : []):
najblizszy_budynek_z_lewej = -1
najblizszy_budynek_z_prawej = -1
for x in range(S-1,1,-1):
if budynki[x]:
najblizszy_budynek_z_lewej = x
break
for x in range(S+1,N+2):
if budynki[x]:
najblizszy_budynek_z_prawej = x
break
if najblizszy_budynek_z_lewej == -1:
print(najblizszy_budynek_z_prawej)
elif najblizszy_budynek_z_prawej == -1:
print(najblizszy_budynek_z_lewej)
elif abs(S - najblizszy_budynek_z_lewej) <= abs(S - najblizszy_budynek_z_prawej):
print(najblizszy_budynek_z_lewej)
else:
print(najblizszy_budynek_z_prawej)
zajete_budynki = zajete()
mieszkanie(zajete_budynki)
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 37 38 39 40 41 | linijka= input().split() N = int(linijka[0]) #ilość budynków na ulicy M = int(linijka[1]) #ilośc budynków zajętych S = int(linijka[2]) #szkoła, zawsze zajęta def zajete(): budynki = [True for _ in range(N+1)] #budynek 0 zawsze nie zajęty, ale to dlatego, żeby index był numerem budynku for _ in range(M): linia = input().split() li = int(linia[0]) ri = int(linia[1]) for x in range(li,ri+1): budynki[x] = False return budynki def mieszkanie(budynki : []): najblizszy_budynek_z_lewej = -1 najblizszy_budynek_z_prawej = -1 for x in range(S-1,1,-1): if budynki[x]: najblizszy_budynek_z_lewej = x break for x in range(S+1,N+2): if budynki[x]: najblizszy_budynek_z_prawej = x break if najblizszy_budynek_z_lewej == -1: print(najblizszy_budynek_z_prawej) elif najblizszy_budynek_z_prawej == -1: print(najblizszy_budynek_z_lewej) elif abs(S - najblizszy_budynek_z_lewej) <= abs(S - najblizszy_budynek_z_prawej): print(najblizszy_budynek_z_lewej) else: print(najblizszy_budynek_z_prawej) zajete_budynki = zajete() mieszkanie(zajete_budynki) |
English