알고리즘

파이썬)사과 담기 게임 - BOJ

1일1공부실천하자 2023. 11. 8. 23:10

 

https://www.acmicpc.net/problem/2828

 

n, m = map(int, input().split())

j = int(input())

left = 1
right = m
cnt = 0

for _ in range(j):
    position = int(input())

    if left > position:
        # 사과과 바구니보다 왼쪽에서 떨어지면
        cnt += (left - position)
        # 사과가 바구니 가장 왼쪽에 오게 설정
        left = position
        right = left + m - 1

    elif right < position:
        # 사과가 바구니보다 오른쪽
        cnt += position - right
        right = position
        left = right - m+1

print(cnt)