2025.2.15 闲话

如何求逆元(详细揭秘)

逆元:若 \(ax\equiv 1\pmod p\) 则称 \(x\)\(a\)\(p\) 意义下的逆元 .

对于 \(a\perp b\),求 \(a\)\(b\) 意义下的逆元:

int inv(int a, int b){return a == 1 ? 1 : b - inv(b % a, a) * b / a;}

时间复杂度 \(O(\log a)\) .

对于素数 \(p\)\(1\le x<p\),求 \(x\)\(p\) 意义下的逆元:

int inv(int x, int p){return x == 1 ? 1 : p - 1ll * (p / x) * inv(p % x, p) % p;};

时间复杂度 \(O(\text{玄学})\) .

posted @ 2025-02-15 19:39  yspm  阅读(157)  评论(0)    收藏  举报
😅​