: 예제를 통해 나의 풀이전략의 문제점을 알아보자.
상어는 12 또는 15 또는 8을 잡아먹고, 표식 처리 후에
해당 pos로 가서 백트래킹을 진행해야 한다.
제출번호 : 98884603 로 진행했을 때 이고,
12를 먹는다고 하자.
12와 6을 먹는다. 그런데 6의 경우 dir는 위로 향하기 때문에 종료된다.
자 이제 그러면 다시 원복한 상태에서 이제는 15를 먹으면서 백트래킹 진행하려고 한다.
그런데 12의 백트래킹 완료된 상태의 vertex를 보면 이렇다...
-> vertex는 원복이 되어야 하는데. 왜 이럴까?
내가 작성한 코드이고, sY , sX 는 shark의 위치이고,
아래의 vertex는 그냥 계속 갱신되는 값일 뿐 원복은 절대로 할 수 없는 상태의 코드이다.
즉 15를 진행하는 시점에서는 과거로 돌아와서 해야 하는데, 지금 미래 시점의 vertex로 되어 있다는 것이다.
핵심
: vertex 도 백트래킹 처리해야 한다.
: 그냥 vertex 와 dirV 도 전부 백트래킹에 사용가능하게 변경함.