163962025-04-29 12:03:53algoproFasor (40)pypy3Futási hiba 20/4094ms32000 KiB
# UUID: 3d8b3cf5-1797-4912-b05a-906a4fb0f6cc
from collections import deque
import sys

def solve():
    n, k = map(int, sys.stdin.readline().split())
    heights_str = sys.stdin.readline().split()

    def get_heights():
        for s in heights_str:
            yield int(s)

    heights_iter = get_heights()
    heights_list = []
    for h in heights_iter:
        heights_list.append(h)

    n = len(heights_list)
    if n == 0:
        return

    can_sit = [True] * n

    # Left pass: Find tallest tree to the left within k distance
    left_deque = deque()
    for i in range(n):
        while left_deque and left_deque[0] < i - k:
            left_deque.popleft()
        while left_deque and heights_list[left_deque[-1]] <= heights_list[i]:
            left_deque.pop()
        left_deque.append(i)
        if left_deque[0] != i and heights_list[left_deque[0]] > heights_list[i]:
            can_sit[i] = False

    # Right pass: Find tallest tree to the right within k distance
    right_deque = deque()
    for i in range(n - 1, -1, -1):
        while right_deque and right_deque[0] > i + k:
            right_deque.popleft()
        while right_deque and heights_list[right_deque[-1]] <= heights_list[i]:
            right_deque.pop()
        right_deque.append(i)
        if right_deque[0] != i and heights_list[right_deque[0]] > heights_list[i]:
            can_sit[i] = False

    for i in range(n):
        if can_sit[i]:
            print(i + 1)
            return


if __name__ == "__main__":
    solve()
"""    
N,K=[int(x) for x in input().split()]
A= input().split()

res=0
done = False
while not done:
    for i in range(1,K+1):
        if res+i<N:
            if int(A[res])<int(A[res+i]):
                res+=i
                i=-1
                break
        else:
            done=True
            break
    if i==K:
        done=True

print(res+1)
"""
RészfeladatÖsszpontTesztVerdiktIdőMemória
base20/40
1Elfogadva0/052ms21316 KiB
2Elfogadva0/093ms23484 KiB
3Elfogadva2/248ms21456 KiB
4Elfogadva2/248ms21464 KiB
5Elfogadva2/248ms21500 KiB
6Elfogadva2/257ms21224 KiB
7Elfogadva2/250ms21480 KiB
8Elfogadva2/279ms22632 KiB
9Elfogadva2/275ms23268 KiB
10Elfogadva2/287ms23508 KiB
11Elfogadva2/265ms22988 KiB
12Elfogadva2/294ms23332 KiB
13Futási hiba0/285ms32000 KiB
14Futási hiba0/274ms32000 KiB
15Futási hiba0/264ms32000 KiB
16Futási hiba0/275ms32000 KiB
17Futási hiba0/267ms32000 KiB
18Futási hiba0/272ms32000 KiB
19Futási hiba0/267ms32000 KiB
20Futási hiba0/282ms32000 KiB
21Futási hiba0/274ms32000 KiB
22Futási hiba0/265ms32000 KiB