10809번 - 알파벳 찾기
생각할 수 있는 테스트 케이스는 전부 다 맞게 잘 나오는데 왜 틀렸다고 하는지 도저히 모르겠습니다...
제발 고수님들 도와주십시오 ㅠㅠㅠ
a[str[i] - 97] = i++; 은 undefined behavior인 것으로 알고 있습니다. i가 증가되는 시점이 str 안의 i가 계산된 이후인지, 아니면 i가 먼저 증가된 후에 str 안의 i가 평가될지는 정해져있지 않기 때문에 컴파일 환경에 따라서 동작이 다를 수 있습니다.
다음과 같이 하면 맞습니다.
또한 97이라는 수 대신에 'a'를 쓰시기를 권장합니다. 아스키 코드가 기본 문자 체계가 아닌 시스템을 사용할 경우 문제가 될 뿐더러, 가독성이 좋은 'a' 대신에 굳이 수로 옮긴 97을 쓸 마땅한 이유가 없습니다.
감사합니다 ㅠㅠ
댓글을 작성하려면 로그인해야 합니다.
surung9898 5년 전
생각할 수 있는 테스트 케이스는 전부 다 맞게 잘 나오는데 왜 틀렸다고 하는지 도저히 모르겠습니다...
제발 고수님들 도와주십시오 ㅠㅠㅠ