인프런 커뮤니티 질문&답변

한유태님의 프로필 이미지
한유태

작성한 질문수

10주완성 C++ 코딩테스트 | 알고리즘 코딩테스트

2-L

2-L질문입니다

해결된 질문

작성

·

136

0

안녕하세요 선생님 🙂

 

선생님 풀이를 보고 다시 한번 풀어봤는데요, 아래 코드에서 선생님 코드와의 차이점은 for문 안의 삼항 연산자가 if문의 위에 올라갔다는 점 딱 하나 밖에 없습니다. xstring헤더의 out of range 에러가 떴는데요, 이유가 뭔지 궁금합니다.

 

항상 도움주셔서 감사합니다 :)

 

http://boj.kr/291382d17703486e8a8f4e790b190e1d

답변 2

1

큰돌님의 프로필 이미지
큰돌
지식공유자

안녕하세요 유태님 ㅎㅎ

라영님이 잘 답변해주신 것 같습니다.

prev문자열은 빈 문자열이 들어가져 있기 때문에 에러가 발생합니다.

 

참고로 if문이 위에있어야 하는 이유는 다음 링크 참고부탁드립니다.

https://www.inflearn.com/questions/1290365/2-l-%EA%B6%81%EA%B8%88%ED%95%9C%EC%A0%90%EC%9D%B4-%EC%9E%88%EC%8A%B5%EB%8B%88%EB%8B%A4

 

 

감사합니다.

한유태님의 프로필 이미지
한유태
질문자

감사합니다 선생님 ㅎㅎ

1

안녕하세요 저도 이게 코드를 뜯어봤는데

o == 1 ? A++ : B++부분을 if문 위에 쓰게 되면 prev문자열은 빈 문자열이 들어가져 있기 때문에 prev문자열을 숫자로 바꾸는 함수(changeToInt)에서 에러가 발생합니다! prev가 5글자 이상이 아니기 때문이죠!

한유태님의 프로필 이미지
한유태
질문자

다른 문제들 풀다가 답변을 이제서야 보게 되었네요 🙂 상세하게 알려주셔서 감사합니다 ^^

한유태님의 프로필 이미지
한유태

작성한 질문수

질문하기