[Python] 백준 13335 트럭
문제 링크 : https://www.acmicpc.net/problem/13335
13335번: 트럭
입력 데이터는 표준입력을 사용한다. 입력은 두 줄로 이루어진다. 입력의 첫 번째 줄에는 세 개의 정수 n (1 ≤ n ≤ 1,000) , w (1 ≤ w ≤ 100) and L (10 ≤ L ≤ 1,000)이 주어지는데, n은 다리를 건너는 트
www.acmicpc.net
1. 접근 방법
queue를 활용하여 쉽게 해결할 수 있는 문제. 리스트를 활용한다면, 슬라이싱으로 유사하게 구현할 수 있을 것 같다.
2. 풀이 코드
🖥python 코드 링크 : https://github.com/mintropy/baekjoon_py/blob/master/13000/13335.py
GitHub - mintropy/baekjoon_py: BOJ를 Python으로 해결한 코드의 저장소입니다.
BOJ를 Python으로 해결한 코드의 저장소입니다. Contribute to mintropy/baekjoon_py development by creating an account on GitHub.
github.com
📕코드 해설
처음에는 한 번에 여러 스탭(시간)을 건너 뛸 수 있으면 건너뛰는 방향으로 구현해보려다, 잘 안 맞는 부분들이 발생하여, 시간은 조금 더 걸리지만 단위 시간만큼 진행을 했다.
Python의 collections.deque에는 재미있는 기능이 하는 있는데, rotate다. 한 번 제대로 다루면 좋을 것 같은 주제인데, 이를 활용하면 popleft > append, pop > appendleft를 한 번에 처리할 수 있다. 이를 통하여 도착할 수 있는 트럭은 빼고, 나머지 차량이 전진하도록 설계했다.
3. 생각 정리
빠른 코드 구현도 좋지만, 무엇보다 정확한 코드가 중요하다.
안되면 조금 돌아가고, 된다면 조금 더 나아가도 좋을 것 같다.