inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

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

1-N

*와 %의 순서가 이해되지 않습니다

388

tmdflgkr

작성한 질문수 3

0

안녕하세요 선생님 1629(1-N) 해설 코드에서 아래 부분이 이해가 잘 되지 않아 질문드립니다.

ll ret = go(a, b / 2);
ret = (ret * ret) % c;

수업에서 오버플로를 방지하기 위해 (a * b) % c = (a % c) *(b % c)의 개념을 사용한다고 했는데 그럼 아래와 같이 되어야 하는거 아닌가요..?

ret = (ret % c) * (ret % c);

저는 ret과 ret을 곱하면 오버플로가 발생할 수 있기 때문에 각각에 모듈러연산을 해준 다음에 곱해야한다고 생각했는데 어떤점이 잘못됐는지 알려주시면 감사하겠습니다.

C++ 코테 준비 같이 해요!

답변 1

1

큰돌

안녕하세요 tmd님 ㅎㅎ

ret은 이미 모듈러 연산이 적용되어있는 값(go함수를 봐주세요.) 이기 때문에 다시 모듈러 연산을 할 필요가 없습니다.

 

감사합니다.

1-E질문입니다!

0

518

2

3-L 틀린 부분 피드백 부탁드립니다.

0

822

2

1-A문제 순열재귀함수 질문입니다.

0

386

1

1-A 일곱난쟁이문제입니다

0

459

1

문제 풀 때 방향성에 대해

0

801

1

맥에서 vs code로 실행 관련 질문입니다

0

523

1

17071번 메모리 초과

0

386

1

1-C질문입니다!

0

423

2

2-B BFS 시간초과질문

0

630

2

1-O 13번 라인

0

443

1

6-J 놀이공원 문제 질문

0

381

1

구현관련 질문

0

484

1

강의 교안

0

320

1

실력을 더 올리고나서 강의를 보는 것이 맞을까요?

0

545

1

안녕하세요! 재귀함수에 관해서 질문드립니다

0

536

1

1-K

0

474

2

3-G번 질문있습니다.

1

474

3

3-C 실행 시간 질문드립니다.

0

494

1

4-A 문제 풀이 질문있습니다.

0

590

2

비트마스킹 연산자 "1의 보수" 영문 표기법

0

435

1

격자탐색 문제에서 BFS 시간복잡도 질문드립니다.

0

335

1

3-O go 함수 질문 드립니다.

1

448

2

4-A 출력 질문

0

305

1

1주차 1-O 질문드립니다

0

259

1