find_next 함수에서 dist[j][i] == 0 경우도 예외처리를 해야합니다.
아기 상어의 현재 위치, 아기 상어보다 크기가 작은 물고기지만 큰 물고기 때문에 갈 수 없는 경우 dist[j][i] 가 0 입니다.
시간 초과가 나는 이유는 아기 상어의 크기가 9 이상이 됐을 때 자기 자신의 위치를 계속 n_q에 넣어서 그런 것 같아요.
그리고 is_chk 함수도 수정이 필요한 것 같습니다.
행 위치까지 같은 경우(get<0>(a) == get<0>(b) 왼쪽 열이 선택되어야 합니다.
sta48 3년 전
예제 테케는 모두 정답으로 나옵니다
채점중 0%에서 걸려서 시간초과라고 나오는데
최대한 시간 복잡도 줄여보려고 노력했는데 잘 안되네요ㅜㅜ
아기상어가 물고기를 먹고 위치 이동할 때마다 bfs로 전체 dist배열을 갱신하는 작업이 불필요한 작업일까요?
메모이제이션으로 풀어야 하는 건가요?
채점번호 :
19705555