190372025-11-18 11:41:22birozsLeghosszabb béke (75 pont)python3Időlimit túllépés 23/75301ms18144 KiB
N,M = map(int,input().split())
T = []
for _ in range(M):
    A,B = map(int,input().split())
    T.append([A,B])
H = []
for i in range(M):
    if T[i][0] != 0:
        kezdet = T[i][0]
        veg = T[i][1]
        for j in range(i+1,M):
            if T[j][0] != 0 and T[j][0] <= veg and T[j][1] >= kezdet:
                kezdet = min(kezdet,T[j][0])
                veg = max(veg,T[j][1])
                T[j][0] = 0
        H.append([kezdet,veg])
T = []
Nap = [0] * (N+1)
for kezdet,veg in H:
    Nap[kezdet] = 1
    Nap[veg] = 1
H = []
Beke = True
hossz = 0
maxhossz = 0
kezdet = 1
maxkezdet = 1
for i in range(1,N+1):
    if Nap[i] == 0 and Beke:
        hossz += 1
    elif Nap[i] != 0 and Beke:
        if hossz > maxhossz:
            maxhossz = hossz
            maxkezdet = kezdet
        Beke = False
    elif Nap[i] != 0 and not Beke:
        Beke = True
        kezdet = i+1
        hossz = 0
if hossz > maxhossz:
    maxhossz = hossz
    maxkezdet = kezdet
if maxhossz == 0:
    print(-1)
else:
    print(maxhossz,maxkezdet)








RészfeladatÖsszpontTesztVerdiktIdőMemória
base23/75
1Elfogadva0/016ms3136 KiB
2Időlimit túllépés0/0282ms18144 KiB
3Elfogadva3/317ms3112 KiB
4Elfogadva3/316ms3124 KiB
5Elfogadva3/316ms3012 KiB
6Elfogadva3/316ms3020 KiB
7Elfogadva3/317ms3064 KiB
8Elfogadva4/416ms3124 KiB
9Hibás válasz0/417ms3048 KiB
10Hibás válasz0/418ms3188 KiB
11Hibás válasz0/439ms3892 KiB
12Hibás válasz0/452ms4420 KiB
13Hibás válasz0/439ms3892 KiB
14Hibás válasz0/443ms4132 KiB
15Hibás válasz0/448ms4404 KiB
16Hibás válasz0/450ms4504 KiB
17Hibás válasz0/457ms4660 KiB
18Elfogadva4/461ms4864 KiB
19Időlimit túllépés0/4300ms16672 KiB
20Időlimit túllépés0/4272ms17120 KiB
21Időlimit túllépés0/4300ms15392 KiB
22Időlimit túllépés0/4301ms16960 KiB