9434 2024. 02. 21 17:16:02 NagyLeo Tűzijáték python3 Elfogadva 50/50 67ms 35776 KiB
def main2():
    N, S, T = map(int, input().split())
    loc = list(map(int, input().split()))

    target = S-1

    ans = [1]
    last = loc[0]
    for i in range(1, N):
        if last+T <= loc[i]:
            if i+1 == target and loc[i]+T > loc[i+1]:
                continue
            ans.append(i+1)
            last = loc[i]

    print(len(ans))
    print(*ans)


def main():
    N, S, T = map(int, input().split())
    loc = list(map(int, input().split()))

    target = S - 1

    ans = [target + 1]
    last = loc[target]
    for i in range(target + 1, N):

        if last + T <= loc[i]:
            # if i+1 == target and loc[i]+T > loc[i+1]:
            #    continue
            ans.append(i + 1)
            last = loc[i]

    # ans2=[]
    last = loc[target]
    for i in range(target - 1, -1, -1):
        if last - T >= loc[i]:
            ans.append(i + 1)
            last = loc[i]

    print(len(ans))
    print(*sorted(ans))

main()
Részfeladat Összpont Teszt Verdikt Idő Memória
base 50/50
1 Elfogadva 0/0 17ms 11204 KiB
2 Elfogadva 0/0 64ms 33136 KiB
3 Elfogadva 2/2 19ms 11428 KiB
4 Elfogadva 2/2 18ms 11864 KiB
5 Elfogadva 2/2 17ms 12288 KiB
6 Elfogadva 2/2 17ms 12176 KiB
7 Elfogadva 2/2 18ms 12660 KiB
8 Elfogadva 2/2 17ms 12652 KiB
9 Elfogadva 2/2 20ms 14164 KiB
10 Elfogadva 2/2 21ms 15060 KiB
11 Elfogadva 2/2 21ms 14984 KiB
12 Elfogadva 2/2 26ms 17216 KiB
13 Elfogadva 2/2 26ms 17396 KiB
14 Elfogadva 2/2 26ms 17480 KiB
15 Elfogadva 3/3 26ms 17592 KiB
16 Elfogadva 3/3 32ms 19708 KiB
17 Elfogadva 3/3 35ms 21980 KiB
18 Elfogadva 3/3 39ms 25272 KiB
19 Elfogadva 3/3 67ms 35488 KiB
20 Elfogadva 3/3 67ms 35332 KiB
21 Elfogadva 4/4 64ms 35304 KiB
22 Elfogadva 4/4 61ms 35776 KiB