kangbada0728   5년 전

목적지 C에 도착했을때 이를 판별하는 저의 방법이 왜 틀렸는지 궁금합니다.

문제가 되는 부분은 코드에서 ////////여기가 문제//////////// 라고 되어있는 부분의 바로 밑 if문입니다.

저는 임의의 C를 시작지점으로 잡고 bfs를 수행하다가 C를 만난 경우, 이것이 시작지점의 x, y좌표와 다르면 이를 도착지점으로 판별하게 했습니다.

C가 두개밖에 없었기에 문제가 없을 줄 알았는데 틀렸다고 결과가 나오더군요.

그래서 아예 도착지점의 C좌표를 가져와서 딱 이 C좌표와 동일한 경우에만 도착지점으로 판별하게 했더니 통과하더군요.

여러번 반복하면서 시도도 해봤는데 대체 이게 왜 다른지 알수가 없더군요.

뭐가 문제일까요?

notorioush2   5년 전

if(matrix[x][y]=='C' && (s1.first!=x && s1.second!=y)) 를

if(matrix[x][y]=='C' && (s1.first!=x || s1.second!=y))

로 바꿔야 합니다.


댓글을 작성하려면 로그인해야 합니다.