7562번 - 나이트의 이동
최초에, 나이트가 이동할 수 있는 8가지 경우를 BFS로 탐색하면서 현재 step값이 이전 step값보다 작다면 check를 갱신해주는 방식으로 코드를 짰습니다.
최단 거리 경로를 계산하는 문제에서 사용하던 방법이라 별 의심없이 제출했는데 번번이 시간초과 판정을 받았어요.
혹시나 싶어 check list는 방문 여부만 확인하게끔 수정하고, queue에 현재 step값을 함께 저장해서
최종 좌표에 도달하면 step을 출력하게끔 수정했더니 정답 처리를 받았습니다.
두 방법 간에 큰 차이는 없다고 생각했는데 정작 채첨 결과가 달라서 질문을 남깁니다.
boolean 값을 비교하는 시간보다 integer 값을 비교하는 시간이 훨씬 더 오래 걸리는 게 문제일까요?
감사합니다 저도 비슷한 문제를 겪었는데 덕분에 해결할 수 있었습니다 :)
댓글을 작성하려면 로그인해야 합니다.
alsrl9 3년 전
최초에, 나이트가 이동할 수 있는 8가지 경우를 BFS로 탐색하면서 현재 step값이 이전 step값보다 작다면 check를 갱신해주는 방식으로 코드를 짰습니다.
최단 거리 경로를 계산하는 문제에서 사용하던 방법이라 별 의심없이 제출했는데 번번이 시간초과 판정을 받았어요.
혹시나 싶어 check list는 방문 여부만 확인하게끔 수정하고, queue에 현재 step값을 함께 저장해서
최종 좌표에 도달하면 step을 출력하게끔 수정했더니 정답 처리를 받았습니다.
두 방법 간에 큰 차이는 없다고 생각했는데 정작 채첨 결과가 달라서 질문을 남깁니다.
boolean 값을 비교하는 시간보다 integer 값을 비교하는 시간이 훨씬 더 오래 걸리는 게 문제일까요?