https://adventofcode.com/2022/day/5
원정대는 배에서 최종 보급품이 내려지는 대로 출발할 수 있습니다. 보급품은 표시된 상자 더미에 보관되지만 필요한 보급품은 다른 많은 상자 아래에 묻혀 있기 때문에 상자를 재배치해야 합니다.
배에는 상자 더미 사이에서 상자를 옮길 수 있는 거대한 화물 크레인이 있습니다. 상자가 부서지거나 넘어지지 않도록, 크레인 작업자는 신중하게 계획된 일련의 단계에 따라 상자를 재배치합니다. 상자를 재배치하면 원하는 상자가 각 더미의 맨 위에 있게 됩니다.
엘프들은 이 섬세한 절차가 진행되는 동안 크레인 작업자를 방해하고 싶지 않지만, 어떤 상자가 어디에 도착할지 그녀에게 묻는 것을 잊어버렸고, 그들이 승선할 수 있도록 가능한 한 빨리 화물을 내릴 준비가 되기를 원합니다.
그들은 상자의 시작 더미와 재배치 절차(퍼즐 입력)가 표시된 도표를 가지고 있습니다. 예를 들어:
[D]
[N] [C]
[Z] [M] [P]
1 2 3
move 1 from 2 to 1
move 3 from 1 to 3
move 2 from 2 to 1
move 1 from 1 to 2
이 예에는 3개의 상자 더미가 있습니다. 더미 1에는 두 개의 상자가 있습니다. 상자 Z
는 맨 아래에 있고 상자 N
은 맨 위에 있습니다. 더미 2에는 세 개의 상자가 있습니다. 아래에서 위로 상자 M
, C
및 D
입니다. 마지막으로 더미 3에는 상자 P
하나만 있습니다.
그런 다음 재정렬 절차가 제공됩니다. 절차의 각 단계에서 일정량의 상자가 한 더미에서 다른 더미로 이동됩니다. 위 재배치 절차의 첫 번째 단계에서 하나의 상자가 스택 2에서 스택 1로 이동되어 다음과 같이 변경됩니다.
[D]
[N] [C]
[Z] [M] [P]
1 2 3
두 번째 단계에서는 3개의 상자가 더미 1에서 더미 3으로 이동합니다. 상자는 한 번에 하나씩 이동하므로, 이동할 첫 번째 상자(D
)는 두 번째, 세 번째 상자 아래에 있게 됩니다.
[Z]
[N]
[C] [D]
[M] [P]
1 2 3
그런 다음 두 상자 모두 더미 2에서 더미 1로 이동합니다. 다시 말하지만 상자는 한 번에 하나씩 이동되기 때문에 상자 C
는 상자 M
아래에 있게 됩니다.
[Z]
[N]
[M] [D]
[C] [P]
1 2 3
마지막으로 상자 하나가 더미 1에서 더미 2로 이동합니다.
[Z]
[N]
[D]
[C] [M] [P]
1 2 3
엘프들은 각 더미의 맨 위에 어떤 상자가 놓일지 알면 됩니다. 이 예에서 최상단 상자는 더미 1에서는 C
, 더미 2에서는 M
, 더미 3에 Z
입니다. 그래서 이들을 결합하여 엘프들에게 CMZ
라는 메시지를 전달해야 합니다.
재배치 절차가 완료된 후 각 더미 맨 위에 있는 상자는 무엇입니까?
크레인 작업자가 상자를 전문적으로 재정렬하는 것을 지켜보는데, 진행 사항이 당신의 예측한 것과 다르게 흘러가는 것을 알게 됩니다.
진흙이 크레인 옆면의 글씨를 덮고 있었고, 당신은 그것을 재빨리 닦아냈습니다. 크레인은 CrateMover 9000이 아니라 CrateMover 9001였습니다.
CrateMover 9001은 에어컨, 가죽 시트, 여분의 컵 홀더 뿐만 아니라 여러 상자를 한 번에 집어 들고 옮길 수 있는 기능 등 새롭고 흥미로운 기능들로 유명합니다.
위의 예시를 다시 가져와봅시다. 더미는 동일한 상태로 시작합니다.
[D]
[N] [C]
[Z] [M] [P]
1 2 3
상자 하나를 더미 2에서 더미 1로 이동하는 것은 이전과 동일하게 작동합니다.
[D]
[N] [C]
[Z] [M] [P]
1 2 3
그러나 세 개의 상자를 더미 1에서 더미 3으로 이동하는 작업은 이동한 세 개의 상자가 동일한 순서로 유지되어 다음과 같은 새로운 상태가 만들어집니다.
[D]
[N]
[C] [Z]
[M] [P]
1 2 3
다음으로 두 상자가 더미 2에서 더미 1로 이동될 때도 순서가 유지됩니다.
[D]
[N]
[C] [Z]
[M] [P]
1 2 3
마지막으로 하나의 상자가 마찬가지로 더미 1에서 스택 2로 이동하지만, 이번에는 상자 C
가 이동됩니다.
[D]
[N]
[Z]
[M] [C] [P]
1 2 3
이 예에서 CrateMover 9001은 상자를 완전히 다른 순서로 배치했습니다. MCD
재배치 절차가 완료되기 전에 시뮬레이션을 엘프들이 최종 보급품을 내릴 준비를 하기 위해 어디에 서 있어야 하는지 알 수 있도록 하십시오. 재배치 절차가 완료된 후 각 스택 맨 위에 있는 상자는 무엇입니까?