compa513   4년 전

런타임에러가 발생하는데 어느 부분이 잘못된 것인지 알고 싶습니다

50 50 1

0 0 1 1

이렇게 입력했을 때 출력이 되지 않는데 어떤 방향으로 수정하면 좋을까요?

wjsqjawns   4년 전

31번째 줄의 arr[i][j]=c++이라는 부분이 있는데,

결국 c의 최댓값은 M*N입니다. 즉, arr[i][j]의 최댓값은 10000입니다.

그런데, 선언된 adj_list와 visited는 인덱스로 arr[i][j]를 받으면서, 할당은 101개밖에 안 받습니다.

여기서 런타임 에러가 발생합니다.

compa513   4년 전

답변 감사합니다 말씀해주신대로 수정하니

50 50 1

0 0 1 1의 경우는 해결이 되었습니다만 

이번에는 런타임 에러가 아니라 틀렸습니다가 뜹니다

다른 반례가 존재하는걸까요?

또한 다른 분의 정답코드에

100 100 1

0 0 1 1을 입력했을 때 출력이 되지 않았습니다

문제에서는 그 코드를 정답으로 인정해주는데 왜 그런걸까요?

wjsqjawns   4년 전

올려주신 코드에서 최대한 조금만 수정해 정답 처리를 받은 코드입니다.

비교해보시면 될 것 같아요.

compa513   4년 전

자세한 답변 정말 감사합니다!

부등호 하나때문에 정답오답이 갈리다니 

코딩의 세계는 심오하군요..

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