197412025-12-20 21:27:44birozsSíkság (55)python3Elfogadva 55/55123ms14816 KiB
N = int(input())
T = list(map(int,input().split()))
a = T[0]
akezd = 0
maxhossz = 0
b = 0
for i in range(1,N):
    if abs(T[i] - a) == 1 and b == 0:
        b = T[i]
        bkezd = i
    elif abs(T[i] - a) == 1 and b != 0 and abs(T[i] - b) > 1:
        if i - akezd > maxhossz:
            maxhossz = i - akezd
            maxkezdo = akezd + 1
        if T[i-1] == b:
            a = T[i]
            akezd = i
            b = 0
        else:  
            j = i - 1
            while T[j] == a:
                j -= 1
            akezd = j + 1
            b = T[i]
            bkezd = i
    elif abs(T[i] - a) > 1:
        if i - akezd > maxhossz:
            maxhossz = i - akezd
            maxkezdo = akezd + 1
        if b != 0 and abs(T[i] - b) == 1 and T[i-1] == b:
            j = i - 1
            while j > bkezd and T[j] == b:
                j -= 1
            a = b
            if j == bkezd:
                akezd = j
            else:
                akezd = j + 1
            b = T[i]
            bkezd = i
        else:
            a = T[i]
            akezd = i
            b = 0
if N - akezd > maxhossz:
    maxhossz = N - akezd
    maxkezdo = akezd + 1
print(maxhossz, maxkezdo)


RészfeladatÖsszpontTesztVerdiktIdőMemória
base55/55
1Elfogadva0/017ms3140 KiB
2Elfogadva0/025ms4356 KiB
3Elfogadva2/216ms3120 KiB
4Elfogadva2/216ms3120 KiB
5Elfogadva2/217ms3124 KiB
6Elfogadva2/217ms3368 KiB
7Elfogadva3/317ms3116 KiB
8Elfogadva2/217ms3284 KiB
9Elfogadva3/317ms3144 KiB
10Elfogadva3/326ms4148 KiB
11Elfogadva3/325ms3636 KiB
12Elfogadva3/324ms4044 KiB
13Elfogadva3/3107ms14604 KiB
14Elfogadva3/398ms5060 KiB
15Elfogadva3/3103ms11664 KiB
16Elfogadva3/3108ms14732 KiB
17Elfogadva3/3105ms14740 KiB
18Elfogadva3/3123ms14816 KiB
19Elfogadva3/3104ms14544 KiB
20Elfogadva3/3112ms14700 KiB
21Elfogadva3/371ms9008 KiB
22Elfogadva3/385ms12536 KiB