kimyh0316   5년 전

안녕하세요. 항상 질문 검색을 통해 답변해 주신 내용들을 참고하면서 문제를 해결하곤 했는데, 이번엔 이틀이란 시간 동안 도저히 문제가 안풀려서 질문드립니다.

행렬을 이용해서 문제를 해결하고자 하였고, 필수로 읽어야 하는 FAQ에서 런타임 에러가 나는 이유 역시 확인했습니다. 배열 크기도 충분히 잡아주었고, 배열에서 인덱스값이 -1이 되는 경우도 없는걸 확인했습니다.

질문 검색에 있는 반례도 (ex) 3 1 2, 1 3 2 4 같은) 다 확인했는데 정상적으로 출력이 됨을 확인했습니다. 

돌아 가는 과정에서 문제가 있나 해서 디버깅도 여러번 해봤는데 딱히 잘못된 부분도 못 찾겠고.. 아마 배열 크기를 1정도 바꿈에 따라서 출력 초과가 나오거나 틀렸습니다 나오는걸로 봐서는 배열 크기 지정을 잘못한 건가 싶기도 한데 현 상황에서 런타임 에러가 나오는 이유도 모르겠습니다. ㅜㅜ

답변 부탁드리겠습니다!!
 

evenharder   5년 전

C/C++에서는 환경에 따라 main 함수에 int a[100000] 수준의 지역변수를 잡을 수 없을 수 있습니다.

때문에 세 배열을 전역 변수로 잡아야 합니다.

그럼에도 불구하고 본 코드는 런타임 에러가 나는데요, 반례는 코드에 첨부하겠습니다. (제일 큰 수만 판별하는 걸로는 부족합니다)

kimyh0316   5년 전

정말 감사합니다!! 아무리 봐도 저 코드로는 해결이 안돼서 다른 방법으로 바꿔서 해결해고 나서도 계속 뭐가 문젠지 몰랐는데 결국 NO 판단하는 부분에서 오류가 있던거네요 ㅜㅜ 

evenharder님 덕분에 몰랐던 부분도 알고 문제 역시 해결할 수 있었습니다! 감사해요!!

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