扩展欧几里得求乘法逆元模板

若ax+by=1,gcd(a,b)=1;
则a的逆元为x%b;

#include
#include
using namespace std;
int l,m,n,s,p;
void exgcd(int a,int b,int &x,int &y)
{
    if (!b)
    {
        x=1;
        y=0;
        return ;
    }
    exgcd(b,a%b,x,y);
    int t=x;
    x=y;
    y=t-a/b*y;
}
int main()
{
    int b,x,y;
    cin>>n>>p;
    for (int i=1;i<=n;++i)
    {
        exgcd(i,p,x,y);
        cout<<(x%p+p)%p<

你可能感兴趣的:(课题)