모듈러 연산

벨코즈
|2024. 7. 5. 05:23
728x90

📍 모듈러 연산

정수의 합과 곱을 어떤 주어진 수의 나머지에 대해 정의하는 방법으로, 쉽게 말해 나머지 연산이다.

 

💡 표현방식


모듈러 연산 표현방식이다.
만약 A와 B가 10억일 경우, 결과값은 매우 커져버리고 오버플로우가 날 것이다.
이렇게 값이 매우 커져버리는 경우를 대비해 A와 B를 곱하기 전에 양쪽에 동일한 수를 나눠준다.
어차피 A와 B를 곱한 값에 10,007을 나누어주려고 했으므로 미리 나누어준다고 해서 결과값에 영향을 주지 않는다.

 

🥑 예시코드

long result = A;
int mod = 1000000007;

for(int i=0; i<N; i++){
    result = ((A % mod) * (B % mod)) % mod;
}

 

💎 문제

 
 
 

'Algorithm > Ref' 카테고리의 다른 글

에라토스테네스의 체  (0) 2024.09.09