乘法逆元

    xiaoxiao2021-03-25  78

    1256 乘法逆元 基准时间限制:1 秒 空间限制:131072 KB 分值: 0  难度:基础题  收藏  关注 给出2个数M和N(M < N),且M与N互质,找出一个数K满足0 < K < N且K * M % N = 1,如果有多个满足条件的,输出最小的。 Input 输入2个数M, N中间用空格分隔(1 <= M < N <= 10^9) Output 输出一个数K,满足0 < K < N且K * M % N = 1,如果有多个满足条件的,输出最小的。 Input示例 2 3 Output示例

    2

    #include<cstdio> #include<iostream> using namespace std; #define ll long long void exgcd(ll a,ll b,ll& x,ll& y){ if(b==0){ x=1; y=0; } else{ exgcd(b,a%b,y,x); y-=x*(a/b); } } int main(){ ll n,m,x,y; cin>>m>>n; exgcd(m,n,x,y); if(x>0) cout<<x<<endl; else cout<<x+n<<endl; return 0; }

    转载请注明原文地址: https://ju.6miu.com/read-34702.html

    最新回复(0)