183412025-10-20 17:26:14algoproInverziópypy3Hibás válasz 34/50224ms88328 KiB
# UUID: c3df4949-56d3-4a16-a245-7590a216fbcf
n = int(input())
a = list(map(int, input().split()))

min_val = a[-1]
min_idx = n - 1
min_right = [(a[-1], n - 1)] * n

for i in range(n - 2, -1, -1):
    if a[i] < min_val:
        min_val = a[i]
        min_idx = i
    min_right[i] = (min_val, min_idx)

max_dist = -1
i_ans = j_ans = -1

for i in range(n - 1):
    val, j = min_right[i + 1]
    if a[i] > val:
        dist = j - i
        if dist > max_dist:
            max_dist = dist
            i_ans = i + 1
            j_ans = j + 1

if max_dist == -1:
    print(-1)
else:
    print(i_ans, j_ans)
RészfeladatÖsszpontTesztVerdiktIdőMemória
base34/50
1Hibás válasz0/037ms19440 KiB
2Elfogadva0/068ms27272 KiB
3Elfogadva1/145ms19432 KiB
4Hibás válasz0/243ms21408 KiB
5Elfogadva7/743ms21044 KiB
6Hibás válasz0/268ms27368 KiB
7Elfogadva2/2224ms87612 KiB
8Elfogadva2/2193ms88288 KiB
9Hibás válasz0/2223ms88236 KiB
10Hibás válasz0/2194ms88304 KiB
11Hibás válasz0/2221ms88304 KiB
12Hibás válasz0/2185ms84792 KiB
13Elfogadva2/2189ms88308 KiB
14Elfogadva2/2221ms88308 KiB
15Elfogadva2/2219ms87796 KiB
16Elfogadva2/2190ms88200 KiB
17Hibás válasz0/2188ms88320 KiB
18Elfogadva2/2216ms88276 KiB
19Elfogadva3/3218ms87796 KiB
20Elfogadva3/3185ms87796 KiB
21Elfogadva2/2216ms87592 KiB
22Elfogadva2/2188ms88308 KiB
23Hibás válasz0/2224ms88328 KiB
24Elfogadva2/2212ms88052 KiB