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

황주훈님의 프로필 이미지
황주훈

작성한 질문수

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

1-G

1-G 질문있습니다

해결된 질문

작성

·

199

0

http://boj.kr/35acb377ed8a48a7b4af2104230d9320

런타임애러가 발생한다고 뜨는데 도대체 어디서 잘못된건지 모르겠어서 질문 드립니다.

좋은 퀄리티의 강의 너무 잘 보고있습니다.

감사합니다

답변 1

1

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

안녕하세요 주훈님 ㅎㅎ

잘 짜셨네요 ㅎㅎ

다만

	    if(a[i].size()<(pp[0].size()+pp[1].size())){
	        cout<<"NE\n";
	        continue;
	    }
		string s=a[i].substr(0,pp[0].size());
		string e=a[i].substr(a[i].size()-pp[1].size(),pp[1].size());

이부분만 이렇게 바꿔보시겠어요?

 

예를 들어 size차이가 나게 되면 string e를 만들 때 substr의 첫번째 인자가 -가 들어갈 수가 있어서 해당 부분에 대한 처리를 앞단에 두어 런타임에러를 방지해야 합니다.

 

또 질문 있으시면 언제든지 질문 부탁드립니다.

좋은 수강평과 별점 5점은 제게 큰 힘이 됩니다. :)

감사합니다.

강사 큰돌 올림.


황주훈님의 프로필 이미지
황주훈

작성한 질문수

질문하기