ZOJ 3609 Modular Inverse(乘法逆元)

原创 2016年05月31日 01:06:22

题目链接:
ZOJ 3609 Modular Inverse
题意:
求ax = 1 (mod n),给出a,n的最小正数解x,如果不存在输出Not Exist.
分析:
用扩展欧几里德求乘法逆元。注意是最小正数解!而不是非负数解!

#include <iostream>
#include <cstdio>
#include <cstring>
#include <string>
#include <algorithm>
#include <climits>
#include <cmath>
#include <ctime>
#include <cassert>
#define IOS ios_base::sync_with_stdio(0); cin.tie(0);
using namespace std;
typedef long long ll;

ll ex_gcd(ll a, ll b, ll& x, ll& y)
{
    if(b == 0) {
        x = 1, y = 0;
        return a;
    }
    ll d = ex_gcd(b, a % b, y, x);
    y -= a / b * x;
    return d;
}

int main()
{
    int T;
    ll a, b;
    scanf("%d", &T);
    while(T--){
        scanf("%lld%lld", &a, &b);
        ll x, y;
        ll d = ex_gcd(a, b, x, y);
        if(d != 1) printf("Not Exist\n");
        else{ 
            x = (x % b + b) % b;
            if(x == 0) x = b;
            printf("%lld\n", x);
        }
    }
    return 0;
}
版权声明:缥缈玉京人,想语然、京兆眉妩。

逆矩阵(inverse matrix)的概念及其意义

逆矩阵是经常遇到的一个概念。教科书中讲解了逆矩阵的求法,但是没有说清楚为何需要逆矩阵,逆矩阵的意义是什么。逆矩阵可以类比成数字的倒数,比如数字5的倒数是1/5,矩阵A的“倒数”是A的逆矩阵。5*(1/...
  • vernice
  • vernice
  • 2015年09月17日 00:09
  • 16173

扩展欧几里德算法详解以及乘法逆元

转载网址:http://blog.csdn.net/zhjchengfeng5/article/details/7786595 有些地方看不懂,但觉得写的很棒,先转载下来,以后慢慢研究…… ...
  • Stray_Lambs
  • Stray_Lambs
  • 2016年08月05日 22:26
  • 6261

扩展欧几里德算法计算乘法逆元详解

乘法逆元的定义:       A * X MOD N == 1则称X为A关于模N的乘法逆元。 注:       只有两个数互素的时候才会有乘法逆元。       两个数不互素是没有乘法逆元的。   费...
  • Wind_white
  • Wind_white
  • 2017年03月12日 13:41
  • 1234

ZOJ 3609 Modular Inverse(求最小乘法逆元)

Modular Inverse Time Limit: 2 Seconds      Memory Limit: 65536 KB The modular modular multiplica...
  • u014361775
  • u014361775
  • 2015年08月24日 21:21
  • 370

ZOJ(Modular Inverse)——最小乘法逆元

搞了一个下午的数论,终于看懂了。。。 题意: 就是给你a和m,然后让你求a关于m的最小乘法逆元。 思路: 这是一道模板题,直接用欧几里得算法来求最小乘法逆元就好了。 推理: ax=1(mo...
  • ACMer_hades
  • ACMer_hades
  • 2015年10月23日 18:50
  • 811

ZOJ 3609 Modular Inverse (FLOYD判圈算法)

Modular Inverse Time Limit: 2 Seconds      Memory Limit: 65536 KB The modular modular multipli...
  • L_BestCoder
  • L_BestCoder
  • 2016年04月22日 14:20
  • 402

ZOJ 3609 Modular Inverse【同余问题】

Modular Inverse Time Limit: 2 Seconds      Memory Limit: 65536 KB The modular modular multiplicat...
  • mengxiang000000
  • mengxiang000000
  • 2016年04月21日 18:15
  • 302

Modular Multiplicative Inverse(模乘逆元)

计算模乘逆元原理上有四种方法: 1.暴力算法 2.扩展欧几里得算法 3.费尔马小定理 4.欧拉定理 模乘逆元定义:满足 ab≡1(mod m),称b为a模乘逆元。以下是有关概念以及四种方法及程序。 文...
  • tigerisland45
  • tigerisland45
  • 2016年05月14日 20:33
  • 805

ZOJ 3841 Cards (组合数+乘法逆元)

题目地址:ZOJ 3841 这题很快就写出来了,但是我犯了一个很**的错误,忘了把0的阶乘设为1。。卡了整整两个小时。。。写完题解就去面壁思过。。不要拦我。。 这题...
  • u013013910
  • u013013910
  • 2015年03月23日 19:21
  • 887

扩展的欧几里得算法(实现求乘法逆元)

  • 2010年11月10日 08:32
  • 741B
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:ZOJ 3609 Modular Inverse(乘法逆元)
举报原因:
原因补充:

(最多只允许输入30个字)