[백준] 14891번: 톱니바퀴 - python

2022. 12. 22. 23:08백준 & 프로그래머스

문제 출처

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

 

14891번: 톱니바퀴

총 8개의 톱니를 가지고 있는 톱니바퀴 4개가 아래 그림과 같이 일렬로 놓여져 있다. 또, 톱니는 N극 또는 S극 중 하나를 나타내고 있다. 톱니바퀴에는 번호가 매겨져 있는데, 가장 왼쪽 톱니바퀴

www.acmicpc.net

 

 


풀이 & 코드

 

 

필자는 톱니바퀴를 deque를 사용해 구성했다. deque를 사용한 이유는 톱니바퀴를 회전을 구현하는 데 있어 list보다 deque가 유리하기 때문이다. deque에 있는 rotate 매서드를 이용한다면 보다 원하는 방향으로 쉽게 돌릴 수 있다.

 

 

해당 문제에서 주의할 점은 한번에 톱니바퀴를 돌려야 한다는 점이다. 예를 들어 3번 톱니바퀴를 돌리라는 입력이 들어왔을 때 3번을 돌린 후 2번과 4번을 확인한다면 우리가 원하는 방법이 아니다. 따라서 3번을 돌리기 전에 1,2,4번째 톱니바퀴들을 살펴보고 한번에 돌려야 한다.

 

 

 

 

 

해당 문제는 삼성 기출 문제로 골드 5에 배치되어 있다.