gw08136   1년 전

테스트 케이스랑 질문글에 올라온 반례들도 다 실행이 됩니다.

어디서 틀린지 모르겠어서 질문 올립니다.

연속된 길의 차이를 저장한 후

차이가 양수면 그 전 차이와 더하고

차이가 양수가 아니면 0으로 처리하는 식으로 문제를 풀었습니다.

고수님들 조금만 도와주세요..

dps2   1년 전

안녕하세요

배열을 1000으로 선언하면 실제로 접근가능한 배열은

arr[0]부터 arr[999]입니다.

문제에서 들어오는 최대 인풋이 1000입니다. 이 값이 들어왔을때 11번째줄에서 arr[1000]에 접근하게 됩니다.

C 언어 계열에서는 저렇게 접근하면 근처 다른 변수에 접근하게 되는데요, 아마 바로 옆의 sub[0]에 접근하지 않았을까 싶습니다.

32번째 줄에서도 범위 밖 값을 참조하게 됩니다.

질문자님의 코드에서 배열의 크기만 1024로 고쳐서 제출했는데 맞았습니다.

그리고... 코드가 조금 복잡한 것 같습니다.

깔끔하게 다듬어보시는 것을 추천드립니다.

gw08136   1년 전

도움과 조언 정말 감사합니다!!
코드도 다듬어 보겠습니다!!

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