leehojin0719   3년 전

안녕하세요.

계속 메모리 초과가 뜨는데 이유를 알고 싶습니다.

다른분들은 visited리스트를 따로 만들어서 말처럼 이동할 수 있는 횟수를 체크하시던데

저는 큐에 x좌표 y좌표 이동 횟수, 말처럼 이동할 수 잇는 횟수를 4개 다 넣었습니다. 이게 메모리 초과의 이유일까요?


주석 보시고 이해 안되시는 내용은 댓글 달아주세요. 답글남길께요.


감사합니다.

nahwasa   3년 전

현재 visited 없이 진행하고 계셔서 그렇습니다.

이 경우 말그대로 기하급수적으로 bfs가 확장됩니다.

상하좌우 4방향만 봐도 처음 0,0에서 0,1과 1,0으로 간애에서 다시 0,0으로 오고 다시 0,1과 1,0으로 가고...

모든 칸에서 해당 로직이 반복되므로 애초에 메모리 초과 안나셨어도 시간초과 나셨을꺼에요.

leehojin0719   3년 전

아 그렇군요 감사합니다 ㅎㅎ

visited를 써서 다시 풀어봐야겠네요

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