117552024-11-09 02:17:09balintTűzijátékpython3Elfogadva 50/5068ms14968 KiB
def main():
    N, S, T = map(int, input().split())
    nums = list(map(int, input().split()))
    returning = 1
    poses = [S]
    # left
    i = S - 2
    left_min = nums[S - 1]
    while i >= 0:
        if nums[i] <= left_min - T:
            left_min = nums[i]
            returning += 1
            poses.append(i + 1)
        i -= 1

    poses.sort()
    # right
    i = S
    right_max = nums[S - 1]
    while i < N:
        if nums[i] >= right_max + T:
            right_max = nums[i]
            returning += 1
            poses.append(i + 1)
        i += 1
    print(returning)
    print(*poses)


main()
RészfeladatÖsszpontTesztVerdiktIdőMemória
base50/50
1Elfogadva0/016ms3128 KiB
2Elfogadva0/068ms14688 KiB
3Elfogadva2/216ms3128 KiB
4Elfogadva2/217ms3128 KiB
5Elfogadva2/216ms3128 KiB
6Elfogadva2/217ms3128 KiB
7Elfogadva2/216ms3128 KiB
8Elfogadva2/216ms3144 KiB
9Elfogadva2/219ms3896 KiB
10Elfogadva2/220ms4144 KiB
11Elfogadva2/220ms4152 KiB
12Elfogadva2/227ms5136 KiB
13Elfogadva2/225ms5252 KiB
14Elfogadva2/225ms5272 KiB
15Elfogadva3/326ms5300 KiB
16Elfogadva3/332ms6548 KiB
17Elfogadva3/337ms7784 KiB
18Elfogadva3/341ms9324 KiB
19Elfogadva3/368ms14968 KiB
20Elfogadva3/368ms14864 KiB
21Elfogadva4/464ms14816 KiB
22Elfogadva4/464ms14884 KiB