15675번 - 괴도 강산
타잔알고리즘을 이용하여 2-SAT으로 풀었습니다.
위치추적기를 만날경우 가로,세로로 둘다 처리해주거나 둘다 처리해주지 않아야 하므로
ep(i, n + j);// i번째 줄 세로를 처리하는 경우는 i, j번째 줄 가로를 처리하는 경우는 n+j로 하고 f(i)는 !i를 반환 ep(f(i), f(n + j));//간선을 이어준다. ep(n + j, i); ep(f(n + j), f(i));
상황에 맞게 간선을 추가해주었고 위치추적기를 만났을 경우는
ep(i, f(n + j)); ep(f(i), n + j); ep(n + j, f(i)); ep(f(n + j), i);
이렇게 간선을 추가해 주고 타잔알고리즘을 썼습니다.
구글링 해보니 저랑 거의 똑같이 푼 사람도 있던데 저는 14-16퍼에서 틀립니다.
아무리 생각해봐도 모르겠네요..
댓글을 작성하려면 로그인해야 합니다.
omh9876 2년 전
타잔알고리즘을 이용하여 2-SAT으로 풀었습니다.
위치추적기를 만날경우 가로,세로로 둘다 처리해주거나 둘다 처리해주지 않아야 하므로
ep(i, n + j);// i번째 줄 세로를 처리하는 경우는 i, j번째 줄 가로를 처리하는 경우는 n+j로 하고 f(i)는 !i를 반환
ep(f(i), f(n + j));//간선을 이어준다.
ep(n + j, i);
ep(f(n + j), f(i));
상황에 맞게 간선을 추가해주었고 위치추적기를 만났을 경우는
ep(i, f(n + j));
ep(f(i), n + j);
ep(n + j, f(i));
ep(f(n + j), i);
이렇게 간선을 추가해 주고 타잔알고리즘을 썼습니다.
구글링 해보니 저랑 거의 똑같이 푼 사람도 있던데 저는 14-16퍼에서 틀립니다.
아무리 생각해봐도 모르겠네요..