robin0108   2년 전

앞공백 그냥엔터 뒤공백 공백 여러개 그리고 이들의 조합 전부다 잘 되는데 왜 안될까여?
테스트서버에서 입력이 어떻게되는걸까여?ㅠㅠ

seico75   2년 전

문장의 최대 길이는 1,000,000 이네요. 0이 6개.

그리고 널문자 +1하고 stack 크기가 모자를 것 같으니 전역으로 빼거나 동적할당 하면 되지 않을까요.

robin0108   2년 전

어 배열크기는 널바이트 포함해서 생각해도 될거같네요. 여태까지 제가 푼 다른 모든 문제들도 그랬으니. 
간과한게 채점서버는 일반적인 경우처럼 프로그램을 실행하고 키보드로 입력후 "엔터"를 누르는 방식으로 입력을 하지 않고 다른방식으로 입력하나보네요.
그렇게되면 문자배열이 \n\0으로 끝나지 않는 경우가 생겨서....
결론적으로 \n이 무조건 배열에 들어가는게 아닌걸 몰라서 생긴 오류인거였어요.

그래서 11번째줄의 \n을 \0으로 바꾼게 위 코드구여. 
else if구문들이 잘못된 거였네요.

djm03178   2년 전

널문자용 바이트를 따로 할당하지 않아도 된다는 생각은 위험해요. 보통 웬만해서는 1,2바이트쯤 넘어가도 할당 단위를 벗어나지 않아서 에러가 안 뜨지만, 실제로 그런 입력이 들어오면 분명히 할당량을 벗어나게 돼요. 다른 변수를 침범할 수도 있고요.

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