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

cse.ict.1님의 프로필 이미지
cse.ict.1

작성한 질문수

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

1-N

1-N 곱셈 모듈러 관련 문의드립니다.

작성

·

267

·

수정됨

0

안녕하세요:)

본 문제의 재귀 함수(go 함수) 안에서, b가 홀수인 경우 ret = ret * a % c; 가 되어야 하는 부분에 대해 한번 더 %c 연산을 하지 않아도 되는지 문의드립니다.

 

예를 들어 (a^5)%c의 경우, [{(a^4)%c}{a%c}]%c 와 같다고 이해했습니다. 이때 b=5 이므로 if(b%2) 에 걸리는데, ret가 (a^4)%c 인 상황에서 (a%c)%c 만큼 추가로 곱해줘야 성립이 되는게 아닌지 궁금합니다!

( 만일 (a^4)%c 에 (a%c) 만 곱한다면 그 값이 c 보다 커져서 나머지 연산을 한번 더 해야할 경우도 있지 않나요? )

 

감사합니다 :)

 

답변 1

0

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

안녕하세요 ㅎㅎ

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

다만 해당부분은 강의 아랫부분에 설명드리고 있습니다.

image

감사합니다.

cse.ict.1님의 프로필 이미지
cse.ict.1

작성한 질문수

질문하기