push_swap 진입 전 정리해보기
게임 규칙
- ‘a’와 ‘b’라는 두 개의 스택 존재.
- a에는 중복 없이 임의의 정수 임의의 순서로 존재. b는 비어있음.
- 스택 a에 증가하는 순서로 정렬해놓는 것이 목표
실행 가능한 명령
sa : swap a - 스택 a의 가장 맨 위 두 개를 스왑. 스택에 두 개 미만으로 원소가 있으면 아무 것도 하지 않는다.
sb : swap b - 스택 b에서 sa와 같은 동작.
ss: sa와 sb를 동시에 수행.
pa : push a - a의 꼭대기에 있는 원소를 가져와서 b의 꼭대기에 넣는다. a가 비어있으면 아무 것도 하지 않는다.
pb : push b - pa와 비슷.
ra : rotate a - 스택 a의 모든 요소를 한 칸씩 위로 올리고, 꼭대기 요소는 마지막으로 보낸다.
rb : rotate b - ra와 비슷.
rr : ra와 rb를 동시에 수행.
rra : reverse rotate a - ra를 거꾸로 수행.
rrb : reverse rotate b - rra와 비슷.
rrr : rra와 rrb를 동시에 수행.