124192024-12-17 14:30:4442Síkság (55)python3Elfogadva 55/55134ms14508 KiB
# O(N)
from sys import stdin
input=stdin.readline

def solv():
    N=int(input())
    A=list(map(int,input().split()))

    start=0
    length=1

    d={A[0]:1}
    last=0
    for i in range(1,len(A)):
        d[A[i]]=d.get(A[i],0)+1
        while len(d)>2:
            d[A[last]]-=1
            if d[A[last]]==0:
                del d[A[last]]
            last+=1
        AA=list(d.keys())
        if len(AA)==2:
            if abs(AA[0]-AA[1])>1:
                while len(d)>1:
                    d[A[last]]-=1
                    if d[A[last]]==0:
                        del d[A[last]]
                    last+=1
        if i-last+1>length:
            length=i-last+1
            start=last
            
    print(length,start+1)

solv()
RészfeladatÖsszpontTesztVerdiktIdőMemória
base55/55
1Elfogadva0/016ms3276 KiB
2Elfogadva0/028ms4152 KiB
3Elfogadva2/216ms3128 KiB
4Elfogadva2/216ms3132 KiB
5Elfogadva2/216ms3128 KiB
6Elfogadva2/217ms2968 KiB
7Elfogadva3/316ms2972 KiB
8Elfogadva2/217ms3128 KiB
9Elfogadva3/317ms3248 KiB
10Elfogadva3/327ms4292 KiB
11Elfogadva3/325ms3804 KiB
12Elfogadva3/324ms3932 KiB
13Elfogadva3/3134ms14508 KiB
14Elfogadva3/3112ms4928 KiB
15Elfogadva3/3126ms11656 KiB
16Elfogadva3/3130ms13992 KiB
17Elfogadva3/3127ms14140 KiB
18Elfogadva3/3131ms14048 KiB
19Elfogadva3/3128ms13984 KiB
20Elfogadva3/3134ms13904 KiB
21Elfogadva3/375ms8828 KiB
22Elfogadva3/3107ms11944 KiB