zoukankan      html  css  js  c++  java
  • 51Nod 1256 乘法逆元 Label:exgcd

    基准时间限制: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

    代码

     1 #include<iostream>
     2 #include<cstdio>
     3 #include<cstring>
     4 #include<algorithm>
     5 #define ll long long
     6 using namespace std;
     7 ll x,y;
     8 ll exgcd(ll a,ll b){
     9     if(b==0){
    10         x=1;y=0;return a;
    11     }
    12     int g=exgcd(b,a%b);
    13     int t=x;
    14     x=y;
    15     y=t-a/b*y;
    16     return g;
    17 }
    18 
    19 int main(){
    20     ll a,b,c;
    21     scanf("%lld%lld",&a,&b);
    22     int g=exgcd(a,b);
    23     printf("%lld
    ",(x%b+b)%b);
    24     return 0;
    25 }

    无话可说,QAQ

    版权声明: 本博客所有文章除特别声明外,均采用 CC BY-NC-SA 3.0 许可协议。转载请注明出处!
  • 相关阅读:
    【Angular2】ng2的开始_组件
    【js框架】随笔
    【sublime text3】个性化定制
    PLSQL中文乱码问题
    Microsoft office 2010密钥
    node_oracle连接
    oracle安装配置
    Logging in Java
    Java 基础
    Hibernate
  • 原文地址:https://www.cnblogs.com/radiumlrb/p/5929166.html
Copyright © 2011-2022 走看看