| 19856 | 2025-12-26 15:56:42 | marnorlor | Két ajándék | python3 | Időlimit túllépés 60/100 | 587ms | 9648 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()
| Részfeladat | Összpont | Teszt | Verdikt | Idő | Memória | ||
|---|---|---|---|---|---|---|---|
| subtask1 | 0/0 | ||||||
| 1 | Elfogadva | 17ms | 3636 KiB | ||||
| 2 | Elfogadva | 86ms | 7768 KiB | ||||
| subtask2 | 10/10 | ||||||
| 3 | Elfogadva | 17ms | 3628 KiB | ||||
| 4 | Elfogadva | 17ms | 3636 KiB | ||||
| 5 | Elfogadva | 17ms | 3636 KiB | ||||
| 6 | Elfogadva | 17ms | 3628 KiB | ||||
| 7 | Elfogadva | 17ms | 3636 KiB | ||||
| subtask3 | 10/10 | ||||||
| 8 | Elfogadva | 17ms | 3456 KiB | ||||
| 9 | Elfogadva | 17ms | 3832 KiB | ||||
| 10 | Elfogadva | 17ms | 3632 KiB | ||||
| 11 | Elfogadva | 17ms | 3636 KiB | ||||
| 12 | Elfogadva | 17ms | 3616 KiB | ||||
| subtask4 | 20/20 | ||||||
| 13 | Elfogadva | 17ms | 3656 KiB | ||||
| 14 | Elfogadva | 17ms | 3380 KiB | ||||
| 15 | Elfogadva | 17ms | 3772 KiB | ||||
| 16 | Elfogadva | 17ms | 3380 KiB | ||||
| 17 | Elfogadva | 17ms | 3508 KiB | ||||
| 18 | Elfogadva | 17ms | 3544 KiB | ||||
| 19 | Elfogadva | 17ms | 3420 KiB | ||||
| 20 | Elfogadva | 17ms | 3588 KiB | ||||
| 21 | Elfogadva | 17ms | 3692 KiB | ||||
| 22 | Elfogadva | 18ms | 3636 KiB | ||||
| subtask5 | 10/10 | ||||||
| 23 | Elfogadva | 23ms | 3716 KiB | ||||
| 24 | Elfogadva | 24ms | 3636 KiB | ||||
| 25 | Elfogadva | 26ms | 3924 KiB | ||||
| 26 | Elfogadva | 27ms | 4056 KiB | ||||
| 27 | Elfogadva | 32ms | 4428 KiB | ||||
| subtask6 | 10/10 | ||||||
| 28 | Elfogadva | 32ms | 4632 KiB | ||||
| 29 | Elfogadva | 32ms | 4644 KiB | ||||
| 30 | Elfogadva | 32ms | 4644 KiB | ||||
| 31 | Elfogadva | 32ms | 4644 KiB | ||||
| 32 | Elfogadva | 32ms | 4840 KiB | ||||
| subtask7 | 0/10 | ||||||
| 33 | Időlimit túllépés | 580ms | 6840 KiB | ||||
| 34 | Időlimit túllépés | 580ms | 6844 KiB | ||||
| 35 | Időlimit túllépés | 580ms | 6864 KiB | ||||
| 36 | Időlimit túllépés | 582ms | 6800 KiB | ||||
| 37 | Időlimit túllépés | 587ms | 7040 KiB | ||||
| subtask8 | 0/30 | ||||||
| 38 | Időlimit túllépés | 587ms | 8088 KiB | ||||
| 39 | Időlimit túllépés | 586ms | 8060 KiB | ||||
| 40 | Időlimit túllépés | 586ms | 8288 KiB | ||||
| 41 | Időlimit túllépés | 587ms | 8524 KiB | ||||
| 42 | Elfogadva | 101ms | 8824 KiB | ||||
| 43 | Időlimit túllépés | 574ms | 9628 KiB | ||||
| 44 | Időlimit túllépés | 574ms | 9456 KiB | ||||
| 45 | Időlimit túllépés | 575ms | 9280 KiB | ||||
| 46 | Időlimit túllépés | 578ms | 9428 KiB | ||||
| 47 | Időlimit túllépés | 583ms | 9620 KiB | ||||
| 48 | Időlimit túllépés | 584ms | 9432 KiB | ||||
| 49 | Időlimit túllépés | 584ms | 9276 KiB | ||||
| 50 | Időlimit túllépés | 587ms | 9444 KiB | ||||
| 51 | Időlimit túllépés | 578ms | 9648 KiB | ||||
| 52 | Időlimit túllépés | 578ms | 9628 KiB | ||||