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

Park SungEun님의 프로필 이미지
Park SungEun

작성한 질문수

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

4-A

4-A 질문입니다.

작성

·

120

0

안녕하세요 큰돌님. 모든 경우의 수 탐색 과정에서

궁금한게 있어서 질문드립니다.

 

모든 경우의 수를 탐색하기

+ 각 경우의 수에서 합 구하기

를위해 다음과 같은 코드가 구현되는 것은 이해했습니다.

for (int i = 1; i < (1 << n); i++)
{ // i는 모든 경우의 수에서 각 케이스이다.
  for (int j = 0; j < n; j++)
  { 
     // i에 해당하는 경우의 수에서 합 구하기위함
     if(i & (1<<j))
  }
}

여기서 질문드리고싶은게

for문에서 i=1 부터 시작하는 이유가

i=0. 즉, 하나도 안고르는 경우는 탐색할 필요가 없기 때문인가요?

답변 1

0

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

안녕하세요 ㅎㅎ

i=0. 즉, 하나도 안고르는 경우는 탐색할 필요가 없기 때문인가요?

>> 네 맞습니다. 0 = 비트가 하나도 안켜짐 = 하나도 안고름.

이렇게 이해하시면 됩니다.

 




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

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

감사합니다.

강사 큰돌 올림.


Park SungEun님의 프로필 이미지
Park SungEun

작성한 질문수

질문하기