skgndi12   4년 전

visited라는 방문한 포인트에 대한 배열을 만들었는데 이 크기 때문인지 계속해서 런타임 에러가 납니다. 크기를 무작정 크게도 해봤는데 이 경우에는 런타임 에러는 발생하지 않지만 컴파일 에러가 발생하는데 무슨 에러가 발생한 것인지에 대한 메시지는 나오지 않습니다... 어느 부분에서 에러가 나게 되는 걸까요...?

djm03178   4년 전

이 코드 그대로 내면 런타임 에러가 아니라 틀렸습니다가 나오고, 20번째 줄을 return 0; 으로만 바꾸면 맞습니다.

djm03178   4년 전

런타임 에러가 난 코드들은 몇 개 읽어보니 질문에 올린 코드와는 달리 visited의 크기가 10만1로 설정되어 있고, 이 때문에 next가 10만 이상일 경우 41번째 줄에서 next <= 100000보다 visited[next] == 0이 먼저 검사되기 때문에 배열의 범위를 넘어서서 그 즉시 런타임 에러가 납니다.

컴파일 에러가 난 코드는 정확히는 컴파일 과정이 아닌 링크 과정에서 에러가 났기 때문에 에러 메시지가 나오지 않는 것 같습니다.

skgndi12   4년 전

감사합니다!! 말씀해주신 부분들을 고치니까 맞았다고 하네요. 조건문에서 조건의 순서도 중요하다는 사실을 새삼 깨닫게 됩니다...

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