예제 3번 돌아가시나요 ?
어떤 프로그램으로 돌리시는진 모르겠지만 제가 비쥬얼로 했을때 예제3번이 돌아가지 않아서
해당 부분 해결하니 통과 됐습니다.
7576번 - 토마토
예제 3번 돌아가시나요 ?
어떤 프로그램으로 돌리시는진 모르겠지만 제가 비쥬얼로 했을때 예제3번이 돌아가지 않아서
해당 부분 해결하니 통과 됐습니다.
visual studio code 로 돌리는데 3번포함 예제 모두 통과하네요..
if(next_x>0 && next_y>0 && next_x<=N && next_y<=M && visit[next_x][next_y]==0 && tomato[next_x][next_y]==0){
q.push({next_x,next_y});
tomato[next_x][next_y] = tomato[now_x][now_y]+1;
visit[next_x][next_y]=1;
}
이부분도 잘못된거 같아
if(next_x>0 && next_y>0 && next_x<=N && next_y<=M){
if(visit[next_x][next_y]==0 && tomato[next_x][next_y]==0){
q.push({next_x,next_y});
tomato[next_x][next_y] = tomato[now_x][now_y]+1;
visit[next_x][next_y]=1;
}
}
이렇게 수정했는데도 또 틀렸다고 나오네요..
제가 고친 부분은 42번 줄에 fail이란 변수 초기화문제만 해결해주었습니다
초기화를 안해주면 57번줄에 안걸리고 65번에 해당하는 답이 나올 때 61번줄 if문에서 에러가 발생하는거 같아요
정말 감사합니다. 초기화하니까 바로 맞네요..
그런데 bool fail; 로 선언하면 자동으로 false 로 초기화되는거 아닌가요??
그게아니더라도 왜 오류가 난 걸까요??
자동으로 0으로 초기화 되는거는 전역변수에 한해서 그렇고 위에 코드에선 지역변수로 선언해서 제대로 된 초기화가 안된거같아요.
오류가 난건 위에 말한대로 fail이라는 변수가 어떤 값인지 모르는 상태에서 if로 체크하려고 하니 발생한거 같네요.
감사합니다 :)
댓글을 작성하려면 로그인해야 합니다.
pjk3015 4년 전
bfs를 사용하여 풀었는데
어떠한 부분에서 오류가 났는지 모르겠습니다.