51nod 125乘法逆元 (扩展欧几里得)
发布日期:2022-03-11 15:03:39 浏览次数:6 分类:技术文章

本文共 1231 字,大约阅读时间需要 4 分钟。

给出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 
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
#include
using namespace std;#pragma comment(linker, "/STACK:102400000,102400000")#define maxn 1000005#define MOD 1000000007#define mem(a , b) memset(a , b , sizeof(a))#define LL long long#define ULL long longconst long long INF=0x3fffffff;void exc_gcd(LL a , LL b , LL &d , LL &x , LL &y){ if(b == 0) { x = 1 ; y = 0 ; d = a; } else { exc_gcd(b ,a % b , d , y , x); y -= x * (a/b); }}//ofstream ofile;int main(){ int n , m; while(scanf("%d %d",&m , &n) != EOF && m) { LL x , y , d; exc_gcd(m , n , d , x , y); x /= d; y /= d; LL t1 = n / d; LL t2 = m / d; x = (x % t1 + t1) % t1; cout << x << endl; } return 0;}

转载于:https://www.cnblogs.com/yfceshi/p/7247338.html

转载地址:https://blog.csdn.net/weixin_30267785/article/details/99192405 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:ViewPager禁止拖动
下一篇:敏捷开发的宣言和原则

发表评论

最新留言

不错!
[***.144.177.141]2024年04月03日 01时59分35秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

SAP UI5和Angular的事件处理机制比较 2019-04-27
SAP UI5和Angular里控制器(Controller)实现逻辑比较 2019-04-27
SAP UI5和Vue的双向绑定比较 2019-04-27
SAP Cloud for Customer里一个Promise的实际应用场合 2019-04-27
重新安装SCCM 2012 client,解决Windows10 1909在线更新问题 2019-04-27
使用jasmine.createSpyObj具有依赖关系的Angular服务进行单元测试 2019-04-27
SAP Spartacus B2B 页面信息提示图标的弹出窗口显示实现逻辑 2019-04-27
SAP Cloud Application Programming 里的@(path) 注解 2019-04-27
使用 Visual Studio Code SQLite 扩展来浏览 SAP Cloud Application Programming 数据库 2019-04-27
SAP Cloud Application Programming bookshop 例子 Vue页面不能正常显示的原因分析 2019-04-27
SAP Cloud Application Programming bookshop 例子的 Fiori Preview 2019-04-27
ABAP 标准培训教程 BC400 学习教程系列文章的目录 2019-04-27
如何从 SAP Spartacus Product Detail 页面,找到其 Angular 实现 Component 的位置 2019-04-27
第三方外部 Saas提供商如何跟使用 SAP 系统的客户进行对接接口集成 2019-04-27
Angular 服务器端渲染的学习笔记(一) 2019-04-27
Angular 服务器端渲染的学习笔记(二) 2019-04-27
Angular Universal 学习笔记 - 客户端渲染和服务器端渲染的区别 2019-04-27
SAP Spartacus 如何获得当前渲染页面的 CMS 元数据 2019-04-27
Angular 依赖注入学习笔记之工厂函数的用法 2019-04-27
最详细的 SAP ABAP Web Service 创建和消费步骤讲解 2019-04-27