198562025-12-26 15:56:42marnorlorKét ajándékpython3Time limit exceeded 60/100587ms9648 KiB
def parkereses(N: int, E: list):
    olcso=0
    draga=0
    osszeg=0
    globalMax=100000000+1
    startPos=0
    E2=E.copy()
    for i in range(0, 100):
        E2.sort(reverse=True)
    while startPos<len(E) and E[startPos] == E2[startPos]:
        startPos= startPos+1
    while True:
        #maximum
        max=0
        maxPos=0
        for i in range(startPos, N):
            if E[i]<globalMax and E[i]>=max:
                max=E[i]
                maxPos=i
        if max>0:
            if max<osszeg/2:
                break
            #párkeresés
            max2=0
            maxPos2=0
            for i in range(startPos, maxPos):
                if E[i]>max2 and E[i]<max:
                    max2=E[i]
                    maxPos2=i
        if max==0:
            break
        if max2!=0 and max+max2>osszeg:
            osszeg=max+max2
            olcso=maxPos2
            draga=maxPos
        #print(max)
        globalMax=max
        if maxPos== startPos:
            startPos= startPos+1
    if olcso==0 and draga==0:
        return 0, 0
    return olcso+1, draga+1

def test():
    a, b=parkereses(10, [1, 9, 6, 2, 7, 2, 8, 4, 6, 3])
    print(a, b)
    assert 5==a
    assert 7==b

    a, b=parkereses(2, [1, 2])
    print(a, b)
    assert 1==a
    assert 2==b

    a, b=parkereses(2, [2, 1])
    print(a, b)
    assert 0==a
    assert 0==b

    a, b=parkereses(2, [2, 2])
    print(a, b)
    assert 0==a
    assert 0==b

    E=[]
    for i in range(0, 50000):
        E.append(1000000000)
    a, b=parkereses(50000, E)
    print(a, b)
    assert 0==a
    assert 0==b
    
    E=[]
    for i in range(50000, 0 ,-1):
        E.append(i)
    a, b=parkereses(50000, E)
    print(a, b)
    assert 0==a
    assert 0==b
    
    a, b=parkereses(4, [41, 100, 73, 74])
    print(a, b)
    assert 3==a
    assert 4==b
    
    a, b=parkereses(4, [47, 100, 73, 74])
    print(a, b)
    assert 1==a
    assert 2==b
    
    a, b=parkereses(8, [2, 100, 40, 71, 50, 71, 62, 63])
    print(a, b)
    assert 7==a
    assert 8==b
    
    a, b=parkereses(6, [5, 5, 5, 6, 5, 5])
    print(a, b)
    assert 1==a or 2==a or 3==a
    assert 4==b
        
    a, b=parkereses(6, [1 ,10, 2, 9, 3, 8])
    print(a, b)
    assert 1==a
    assert 2==b
        
    a, b=parkereses(5, [1, 100, 2, 3, 99])
    print(a, b)
    assert 4==a
    assert 5==b
        
    a, b=parkereses(6, [8, 1, 7, 2, 6, 9])
    print(a, b)
    assert 1==a
    assert 6==b
    
    a, b=parkereses(10, [1, 1, 1, 1, 2, 2, 2, 2, 2, 2])
    print(a, b)
    assert 1==a
    assert 10==b
        
    a, b=parkereses(9, [2, 2, 3, 3, 3, 1, 1, 1, 3])
    print(a, b)
    assert 1==a
    assert 9==b
        
    a, b=parkereses(10, [9, 1, 8, 2, 7, 3, 6, 4, 5, 10])
    print(a, b)
    assert 1==a
    assert 10==b
    
    a, b=parkereses(6, [3, 10, 4, 10, 5, 10])
    print(a, b)
    assert 5==a
    assert 6==b
    
    a, b=parkereses(8, [3, 10, 8, 10, 9, 10, 4, 10])
    print(a, b)
    assert 5==a
    assert 8==b
    
    a, b=parkereses(3, [5, 1, 2])
    print(a, b)
    assert 2==a
    assert 3==b


def futtatas():
    N=int(input())
    E=list(map(int,input().split()))
    a, b=parkereses(N, E)
    print(a, b)

#test()
futtatas()
SubtaskSumTestVerdictTimeMemory
subtask10/0
1Accepted17ms3636 KiB
2Accepted86ms7768 KiB
subtask210/10
3Accepted17ms3628 KiB
4Accepted17ms3636 KiB
5Accepted17ms3636 KiB
6Accepted17ms3628 KiB
7Accepted17ms3636 KiB
subtask310/10
8Accepted17ms3456 KiB
9Accepted17ms3832 KiB
10Accepted17ms3632 KiB
11Accepted17ms3636 KiB
12Accepted17ms3616 KiB
subtask420/20
13Accepted17ms3656 KiB
14Accepted17ms3380 KiB
15Accepted17ms3772 KiB
16Accepted17ms3380 KiB
17Accepted17ms3508 KiB
18Accepted17ms3544 KiB
19Accepted17ms3420 KiB
20Accepted17ms3588 KiB
21Accepted17ms3692 KiB
22Accepted18ms3636 KiB
subtask510/10
23Accepted23ms3716 KiB
24Accepted24ms3636 KiB
25Accepted26ms3924 KiB
26Accepted27ms4056 KiB
27Accepted32ms4428 KiB
subtask610/10
28Accepted32ms4632 KiB
29Accepted32ms4644 KiB
30Accepted32ms4644 KiB
31Accepted32ms4644 KiB
32Accepted32ms4840 KiB
subtask70/10
33Time limit exceeded580ms6840 KiB
34Time limit exceeded580ms6844 KiB
35Time limit exceeded580ms6864 KiB
36Time limit exceeded582ms6800 KiB
37Time limit exceeded587ms7040 KiB
subtask80/30
38Time limit exceeded587ms8088 KiB
39Time limit exceeded586ms8060 KiB
40Time limit exceeded586ms8288 KiB
41Time limit exceeded587ms8524 KiB
42Accepted101ms8824 KiB
43Time limit exceeded574ms9628 KiB
44Time limit exceeded574ms9456 KiB
45Time limit exceeded575ms9280 KiB
46Time limit exceeded578ms9428 KiB
47Time limit exceeded583ms9620 KiB
48Time limit exceeded584ms9432 KiB
49Time limit exceeded584ms9276 KiB
50Time limit exceeded587ms9444 KiB
51Time limit exceeded578ms9648 KiB
52Time limit exceeded578ms9628 KiB