데이터가 잘못된 것 같습니다.
원판을 1 2 3 (작은게 1, 큰게 3) 이라고 했을 때,
그리고 우선순위 AB > BC > CA > BA > CB > AC 라고 할 때,
A B C
1 0 0
2 0 0
3 0 0
-------- AB 발동
0 0 0
2 0 0
3 1 0
------- BC 발동(AB가 안됨)
0 0 0
2 0 0
3 0 1
------- AB 발동
0 0 0
0 0 0
3 2 1
------- CA 발동(AB, BC가 안됨)
0 0 0
1 0 0
3 2 0
------- AB 발동
0 0 0
0 1 0
3 2 0
------- BC 발동(AB가 안됨)
0 0 0
0 0 0
3 2 1
... 이하 무한루프 발동합니다.
조건을 다시 자세히 읽어보시기 바랍니다.
이런 문제를 막기 위해 우리는 하나의 원판이 연속으로 2번 이상 움직이는 경우도 막으려고 한다.
즉,
A B C
1 0 0
2 0 0
3 0 0
-------- AB 발동
0 0 0
2 0 0
3 1 0
------- AC 발동(AB, BC, BA가 안됨)
0 0 0
0 0 0
3 1 2
이런식으로 작동할 것입니다.
아.. 어떤 경우에도 한 원판이 두번 이상 움직이면 안되는거군요 감사합니다.