Logo
No results found.
繰り返し二乗法
Overview

繰り返し二乗法

July 29, 2024
1 min read

用途

an  (mod  mod)a^n \ \ (\text{mod}\ \ mod)O(log(n))O(\log(n))で求める.

計算量

O(logn)O(\log n)

使い方

mop(a,b,mod)an  (mod  mod)a^n \ \ (\text{mod}\ \ mod)が返る.

実装

int mop(int a, int n, int mod = LLONG_MAX) {
int res = 1;
while (n > 0) {
if (n & 1)
res = res * a % mod;
a = a * a % mod;
n >>= 1;
}
return res;
}

Verify

//TODO

Downloading for offline use...