Koala - 12기/기초 알고리즘 스터디

[백준/python] 28258번: 사과 담기 게임

yeonju51 2024. 2. 11. 22:31

[문제]

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

 

2828번: 사과 담기 게임

상근이는 오락실에서 바구니를 옮기는 오래된 게임을 한다. 스크린은 N칸으로 나누어져 있다. 스크린의 아래쪽에는 M칸을 차지하는 바구니가 있다. (M<N) 플레이어는 게임을 하는 중에 바구니를

www.acmicpc.net

 

[소스코드]

n,m = map(int, input().split())
j = int(input())
 
left = 1
right = m
count = 0
 
for _ in range(j):
    position = int(input())
 
    if left <= position and right >= position:
        continue
    elif left > position:
        count += (left-position)
        right -= (left-position)
        left = position
    else:
        count += (position-right)
        left += (position-right)
        right = position
 
print(count)

 

[풀이]

  1. n과 m 값을 입력받는다
  2. 반복 횟수 j를 입력받는다
  3. j번 만큼 반복하면서 각각의 위치를 입력받아 이동 거리를 계산한다
  4. 이동 거리를 출력한다