인프런 영문 브랜드 로고
인프런 영문 브랜드 로고

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

박우림님의 프로필 이미지
박우림

작성한 질문수

it 취업을 위한 알고리즘 문제풀이 입문 (with C/C++) : 코딩테스트 대비

24. Jolly Jumpers

시간초과가 뜹니다.

작성

·

224

0

제가 직접 짠 코드로 채점시 5번 항목에서 자꾸 시간초과가 뜹니다. 그래서 강사님이 보여주신 코드로 똑같이 코딩을 해보았는데도 여전히 5번에서 시간초과로 뜨네요...

채점기에 이상이 있다고 봐야할까요? 

답변 1

0

김태원님의 프로필 이미지
김태원
지식공유자

인접한 두 수의 차인 pos값이 n-1값보다 큰 경우

if(ch[pos]==0 && pos>0 && pos<n  ) ch[pos]=1;  이렇게 짜면  vector<int> ch(n); 선언했기 때문에

ch 벡터 인덱스가 0부터 n-1까지 존재해  ch[pos]==0부분에서 없는 인덱스를 참조하는 잘못을 합니다.

그래서 if(pos>0 && pos<n && ch[pos]==0) ch[pos]=1; 이렇게 짜서 pos값이 n보가 크거나 같으면 pos>0 && pos<n 이 거짓이 되어 뒤쪽 ch[pos]==0부분을 수행하지 않도록 했어야 했었습니다.  

죄송합니다. 영상은 새로 찍어서 올리겠습니다.

 

 

박우림님의 프로필 이미지
박우림

작성한 질문수

질문하기