news 2026/5/3 3:58:24

求多个乘法逆元(模板)

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
求多个乘法逆元(模板)

线性算法

用于求一连串数字对于一个modp的逆元。洛谷P3811

只能用这种方法,别的算法都比这些要求一串要慢。

首先我们有一个,1−1≡1(modp)

然后设 p=k∗i+r,(1<r<i<p) 也就是 k 是 p/i 的商,r 是余数 。

再将这个式子放到(modp)意义下就会得到:

k∗i+r≡0(modp)

然后乘上i−1,r−1就可以得到:

k∗r−1+i−1≡0(modp)i−1≡−k∗r−1(modp)i−1≡−⌊ip​⌋∗(pmodi)−1(modp)

于是,我们就可以从前面推出当前的逆元了。

代码也很短:

inv[1] = 1; for(int i = 2; i < p; ++ i) inv[i] = (p - p / i) * inv[p % i] % p;
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/5/3 6:15:45

Week 34: 量子深度学习入门:从 Neural ODE 到哈密顿量子演化

文章目录 Week 34: 量子深度学习入门&#xff1a;从 Neural ODE 到哈密顿量子演化摘要Abstract1. ResNet的连续极限1.1 从离散层到连续流1.2 伴随敏感度法 2. 非均匀时序建模2.1 场景2.2 ODE-RNN 3. 跨越边界&#xff1a;哈密顿量与量子可能性3.1 物理守恒与哈密顿网络 (HNN)3.…

作者头像 李华
网站建设 2026/4/28 1:54:02

Java中strip与trim()的区别

TOC Java中strip与trim()的区别 jdk11及以上版本&#xff0c;java的String支持strip()方法&#xff0c;那么原来的删除空白trim()与strip()的区别时什么&#xff1f; 区别 trim()&#xff1a;仅处理字符串首尾的ASCII空白字符串&#xff08;小于等于\u0020字符&#xff0c;…

作者头像 李华
网站建设 2026/5/1 23:00:54

软件测试—即时通讯测试方法

一、即时通讯实现方式 1.短轮询&#xff08;Short Polling&#xff09; 短轮询是一种客户端定期向服务器发送HTTP请求以检查是否有新数据的简单技术。无论服务器是否有新数据&#xff0c;客户端都会在固定的时间间隔后再次请求。 实现机制 客户端向服务器发送HTTP请求&#xff…

作者头像 李华
网站建设 2026/5/1 20:38:40

免费在线制作家庭小户型平面图的详细教程和设计模板大全

良功绘图网站 (https://www.lghuitu.com ) 一、引言&#xff1a;小户型平面图设计的核心价值与工具选择逻辑 在房价高企的当下&#xff0c;小户型住宅成为众多家庭的首选。如何在有限的空间内实现功能与美观的平衡&#xff0c;平面图设计是关键第一步。一份精准的小户型平面图…

作者头像 李华