乘法逆元(扩展欧几里得)
Posted water-radish
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了乘法逆元(扩展欧几里得)相关的知识,希望对你有一定的参考价值。
#include<iostream> #include<cstdio> #include<cstring> #include<cstdlib> #include<cmath> #include<algorithm> #define ll long long using namespace std; ll n,p; void exgcd(ll a,ll b,ll &x,ll &y) { if(!b) { x=1;y=0; return; } exgcd(b,a%b,x,y); ll tmp=x; x=y; y=tmp-a/b*y; } int main() { scanf("%lld%lld",&n,&p); ll x=0,y=0; exgcd(n,p,x,y); x=(x%p+p)%p; printf("%lld ",x); return 0; }
以上是关于乘法逆元(扩展欧几里得)的主要内容,如果未能解决你的问题,请参考以下文章