코드가 주석도 없어서 읽기가 솔직히 말하자면 좀 그래요 ㅠㅠ 힌트를 조금 드리겠습니다.
지나는 길이 무한으로 도는 곳이라면 다시 또다시 갈 필요 없으니깐 처리하잖아요??
그러면 지나는 길이 빠져나올 수 있는 길이라면 그 길도 다시 갈 필요가 없겠죠? 그 길도 처리를 해주시면 될 것 같아요~17090번 - 미로 탈출하기
코드가 주석도 없어서 읽기가 솔직히 말하자면 좀 그래요 ㅠㅠ 힌트를 조금 드리겠습니다.
지나는 길이 무한으로 도는 곳이라면 다시 또다시 갈 필요 없으니깐 처리하잖아요??
그러면 지나는 길이 빠져나올 수 있는 길이라면 그 길도 다시 갈 필요가 없겠죠? 그 길도 처리를 해주시면 될 것 같아요~댓글을 작성하려면 로그인해야 합니다.
celestial 3년 전
이미 지나온 부분은 다시 검사할 필요가 없으니까
int ans = 0;
for (int i = 0; i < N; i++) {
for (int j = 0; j < M; j++) {
visited[i][j] = true;
pair,char>start;
start.first.first = i;
start.first.second = j;
start.second = map[i][j];
Q.push(start);
ans+=BFS(start);
}
}
이런 식으로 이중 포문을 처음부터 돌지 않도록 조치해주었는데요,
그럼에도 어느 부분에서 잘못한 것인지 모르겠습니다.
입출력을 빨리 받는 것도 있다길래 입력해보았더니 그럼에도 여전히 90퍼센트에서 시간 초과가 나고 있군요.
조언을 주시면 정말 감사하겠습니다.