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

allnstar님의 프로필 이미지
allnstar

작성한 질문수

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

4-M

4 - M 조건 질문드립니다.

해결된 질문

작성

·

101

·

수정됨

0

안녕하세요. 큰돌님.

 

큰돌님의 풀이 중 아래부분에 대해 질문 드립니다.

if(i < s.size() - 1 && s.substr(i, 2) == "pi" || s.substr(i, 2) == "ka") i += 1; 

 

현재 코드는 연산자 우선순위 때문에 if(false && false || true)일 경우 true를 반환하는데

 

if(false && (false || true))처럼 괄호를 추가해서 false를 반환하는게 원래 의미하신 코드인 것 같아서 질문드립니다.

 

조건에서 괄호가 있는게 나을지 궁금합니다.

답변 1

1

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

안녕하세요 allnstar님ㅎㅎ

네 수강생님 말씀이 맞습니다.

	for(int i = 0; i < s.size(); i++){
		if(i < s.size() - 1 && (s.substr(i, 2) == "pi" || s.substr(i, 2) == "ka")) i += 1; 

 

해당 부분은 수정하여 다시 업로드하도록 하겠습니다.

가로친게 의미적으로 더 맞는 코드이며 더 나은 코드네요 ㅎㅎ

 

제가 의미했던 바를 이해하시고 더 나은 코드를 제안해주셔서 정말 감사의 말씀을 드립니다.

해당 부분은 오늘내로 반영하도록 하겠습니다.

 

감사합니다.

allnstar님의 프로필 이미지
allnstar
질문자

네 ㅎㅎ

큰돌님 강의가 큰 도움이 되고 있습니다

저도 감사드립니다

allnstar님의 프로필 이미지
allnstar

작성한 질문수

질문하기