197422025-12-21 10:21:10marnorlorLapozgatáspython3Időlimit túllépés 0/100601ms116520 KiB
def lapozgatos(M: int, K: int, N: int, A):
    oldal=K
    megnezett=[K]
    lapozasok=0
    kezdes=0

    for i in range(len(A)):
        if megnezett.count(A[i])!=0:
            continue
        if A[i]>oldal:
            kezdes=kezdes+1
            while A[i]>oldal:
                megnezett.append(oldal)
                oldal=oldal+1
                lapozasok=lapozasok+1
        if A[i]<oldal:
            kezdes=kezdes+1
            while A[i]<oldal:
                megnezett.append(oldal)
                oldal=oldal-1
                lapozasok=lapozasok+1
    return kezdes, lapozasok

def lapozgatos2(M: int, K: int, N: int, A):
    also=K
    felso=K
    oldal=K
    kezdes=0
    lapozasok=0
    for i in A:
        if i<also:
            kezdes=kezdes+1
            lapozasok=lapozasok+oldal-i
            also=oldal=i
        if i>felso:
            kezdes=kezdes+1
            lapozasok=lapozasok+i-oldal
            felso=oldal=i
    return kezdes, lapozasok

def test():
    kezdes, lapozasok = lapozgatos(3, 1, 5, [1, 2, 3, 2, 1])
    print(kezdes, lapozasok)
    assert 2 == kezdes
    assert 2 == lapozasok

    kezdes, lapozasok = lapozgatos2(100000000, 1, 3, [50000000, 1, 100000000])
    print(kezdes, lapozasok)
    assert 2 == kezdes
    assert 99999999 == lapozasok

    kezdes, lapozasok = lapozgatos2(10, 5, 3, [3, 4, 6])
    print(kezdes, lapozasok)
    assert 2 == kezdes
    assert 5 == lapozasok

    kezdes, lapozasok = lapozgatos2(20000, 1, 6, [997, 3, 654, 1300, 1, 19999])
    print(kezdes, lapozasok)
    assert 3 == kezdes
    assert 19998 == lapozasok

def futtatas():
    M, K, N=map(int,input().split())
    A=list(map(int,input().split()))
    kezdes, lapozasok = lapozgatos(M, K, N, A)
    print(kezdes, lapozasok)

#test()
futtatas()
RészfeladatÖsszpontTesztVerdiktIdőMemória
subtask10/0
1Elfogadva17ms3124 KiB
2Elfogadva16ms3124 KiB
subtask20/12
3Időlimit túllépés592ms116492 KiB
4Időlimit túllépés595ms111764 KiB
5Időlimit túllépés595ms112000 KiB
subtask30/24
6Elfogadva17ms3320 KiB
7Elfogadva28ms3380 KiB
8Időlimit túllépés587ms7412 KiB
9Időlimit túllépés586ms7000 KiB
10Időlimit túllépés601ms7368 KiB
11Időlimit túllépés505ms5660 KiB
subtask40/28
12Időlimit túllépés584ms34188 KiB
13Időlimit túllépés586ms37944 KiB
14Időlimit túllépés586ms40816 KiB
15Időlimit túllépés587ms56172 KiB
16Időlimit túllépés588ms69452 KiB
17Időlimit túllépés591ms106292 KiB
18Időlimit túllépés593ms112684 KiB
subtask50/36
19Időlimit túllépés586ms71892 KiB
20Időlimit túllépés586ms55652 KiB
21Időlimit túllépés587ms90028 KiB
22Időlimit túllépés587ms94388 KiB
23Időlimit túllépés593ms107404 KiB
24Időlimit túllépés593ms98208 KiB
25Időlimit túllépés596ms116064 KiB
26Időlimit túllépés593ms109624 KiB
27Időlimit túllépés591ms116520 KiB