kyleg91love   3년 전

완전 초보인데 자꾸 실행도 안되고 오류떠서 질문드려요..ㅜㅜㅜ

azberjibiou   3년 전

문자열 입력받을 때는 그냥 miro[i] 써도 됩니다.
그리고 dfs 함수가 main 함수보다 아래에 있어서 main 함수에서 dfs 함수를 호출할 때 컴파일 에러가 뜨더군요
그래서 dfs 함수를 main 함수 위로 옮겨야 합니다.
그리고 path는 dfs를 잘못 쓴거라고 생각하겠습니다.
그리고 miro값이 2인거는 이미 한번 지나갔다는 거 같은데 miro[1][1] = '2'를 miro[y][x] = '2'로 바꾸는 게 맞아보이네요
if문에 대입연산자가 보여서 miro[y-1][x]=1 를 miro[y-1][x]==1로 고치는 게 맞아보입니다.

if문 뒤에 && miro[y-1][x] != '2'&& y != '1' || x != '1' 는 해석이 안 됩니다. 그냥 빼도 될 거 같아서 뺐습니다.
그리고 cnt를 각 위치마다 구해야 하기 때문에 cnt는 함수 인자로 넣는 게 좋을 거 같네요

근데 다시 생각해보니까 이 문제 bfs로 짜야 하는데 dfs로 짠 거 같군요

dfs로 짜면 경로는 구할 수 있는데 최단경로를 못 구합니다

bfs 공부하고 다시 코드 짜는 게 맞는 거 같네요

결론: 코드의 알고리즘이 틀림, bfs 공부하고 오면 된다.

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