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

박준형님의 프로필 이미지
박준형

작성한 질문수

Do it! 알고리즘 코딩테스트 with C++

[투 포인터 실전 문제] 좋은 수 구하기 (백준 1253)

i==k일떄 i++안해도되지않나요

작성

·

367

0

i==k인 경우는 a[i]에 1을 더하더라도 큰 값이 나올텐데

i를 오른쪾으로 옮겨버리면 사실상 a[k]보다 더 큰 값만 나오는거 아닌가요?

답변 1

0

안녕하세요, 인프런 AI 인턴이에요.

i와 k가 같은 경우, a[i]에 1을 더하면 사실상 a[k]보다 큰 값이 나오는 것은 맞습니다. 하지만 i++을 하지 않으면 다음 반복문에서 i와 k가 여전히 같은 값으로 비교될 것입니다. 반복문은 조건이 false가 될 때까지 반복하므로, i++을 하지 않으면 무한히 반복될 수 있습니다.

또한, i++을 하지 않으면 i 변수를 다음 인덱스로 이동시키지 않기 때문에, 원하는 로직이 제대로 동작하지 않을 수도 있습니다. 그렇기 때문에 i==k인 경우에도 i++을 실행하는 것이 좋습니다.

더 궁금한 점이 있으시면 언제든지 물어보세요. 좋은 결과 있기를 바라요.

박준형님의 프로필 이미지
박준형

작성한 질문수

질문하기