wlsgussla123   6년 전

안녕하세요? 자료구조를 공부하다가 BST 문제를 풀기 위하여 찾은 학생입니다.

BST를 구현하고 저의 IDE에서는 돌아가는데 백준에서는 런타임 에러가 발생하더군요!!

런타임 오류가 발생하는 이유가 무엇인지 고수님들의 조언 좀 부탁드리겠습니다!ㅠㅠ

keith   6년 전

저도 문제 자체는 단순하나, 입력의 종료 조건이 명확하지 않아서, 안하고 있는데요.. 이거 좀 문제 입력을 바꿨으면. ㅜㅜ

파일입력이면 모를까, Standard input으로 받는데, 이런식의 입력이면 좀 짜증이. --;

아무래도, 아래 소스에서 문제가 될 소지가 있습니다.


doju   6년 전

nextLine() 함수는 더 이상 입력받을 줄이 없을 경우 에러(java.util.NoSuchElementException: No line found)를 발생시킵니다.
이 문제와 같이 입력이 몇 줄이나 주어지는지 알 수 없는 경우는 hasNextLine() 함수를 이용해 입력받기 전에 남은 줄이 있는지 확인해 줘야 합니다.

EOF(End of file)까지 계속해서 입력을 받아야 하는 문제는 흔하지는 않지만 종종 등장하며(ex. https://www.acmicpc.net/proble...) 언어별 처리법을 숙지하고 있어야 합니다.
표준 입출력 형식이더라도 pipeline을 사용하거나 파일 입출력으로 구현해서 돌려 본 뒤 제출하기 전에 표준 입출력으로 바꾸는 등의 방법으로 테스트할 수 있습니다.

wlsgussla123   6년 전

@keith 답변 감사드립니다. doju님의 답변을 참고하시면 좋을 것 같아요!

@doju 바로 해결되었습니다. EOF 처리에 대한 방법을 숙지하고 있어야 하겠네요ㅠㅠㅠ.. 답변 감사합니다!

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