1. Introduction
abmodm형태를 계산하는 방법은 여기에 포스팅했다.
이번 포스팅에서는 이것을 돌리기 위한 코드를 최적화하는 방법을 소개한다.
2. Approach
ab의 형태의 자연수에 대한 나머지 계산에 대한 방법들을 소개한다.
2.1 일반적인 방법
시간복잡도가 O(b)이다. r이 ab까지 커지기 때문에 overflow일어나기 매우 쉽다.
2.2 개선된 방법
합동식 연산의 특성을 이용한 방법이다. 시간복잡도가 O(logb)으로 줄어든다.
2.3 최적화
재귀를 반복문으로 고치고, 비트연산자를 사용한다.