백준 문제풀이
2023. 1. 10.
[백준][파이썬] 1461 도서관
1.문제 분석 최소 걸음 수를 구하는 문제 들 수 있는 책의 개수와 책을 가져다 놓을 위치가 정해진다. 2. 기본 아이디어 절댓값 순으로, 양수와 음수 파트를 분리한다. 한 번에 가져갈 수 있는 책의 개수 만큼 for문을 통해 이동한다. 3.문제 풀이 이 문제의 경우 그리디 알고리즘이 쓰인다. 그리디 알고리즘은 당장 눈 앞의 최선을 선택하는 알고리즘인데, 이 문제도 최소 걸음 수를 걷도록 리스트에 접근하기 때문에 알맞은 것 같다. n, m = map(int, input().split()) lst = list(map(int, input().split())) pos, neg = [], [] # 양수, 음수 분리 last, walk = 0, 0 # 가장 먼 거리, 걸음 수 for i in lst: if i <..