洛谷 P3811 [模板] 模意义下的乘法逆元

信贷风控实战指南:Vintage分析表从数据建模到风险洞察 本文是一份信贷风控实战指南,详细阐述了Vintage分析从数据建模到风险洞察的全流程。文章深入解析了Vintage分析作为信贷资产“体检报告”的核心价值,并提供了从借据表与还款计划表设计、账龄计算、逾期口径判定到风险暴露计算与最终可视化透视的完整SQL实现方案,旨在帮助风控从业者构建精准的风险监控体系。 阅读详情

【模板】模意义下的乘法逆元

题目描述

给定 n,pn,pn,p 求 1∼n1\sim n1∼n 中所有整数在模 ppp 意义下的乘法逆元。

这里 aaa 模 ppp 的乘法逆元定义为 ax≡1(modp)ax\equiv1\pmod pax≡1(modp) 的解。

输入格式

一行两个正整数 n,pn,pn,p。

输出格式

输出 nnn 行,第 iii 行表示 iii 在模 ppp 下的乘法逆元。

样例 #1

样例输入 #1

10 13

样例输出 #1

1
7
9
10
8
11
2
5
3
4

提示

1≤n≤3×1061 \leq n \leq 3 \times 10 ^ 61≤n≤3×106,n<p<20000528n < p < 20000528n<p<20000528。

输入保证 ppp 为质数。

思路

递推式的起点:1−1≡1(modp)1^{-1}\equiv 1 \pmod{p}1−1≡1(modp)(i=1i=1i=1时)。
对于 i≥2i\geq2i≥2,设 p=k∗i+tp=k*i+tp=k∗i+t,则 k∗i+t≡0(modp)k*i+t\equiv 0 \pmod{p}k∗i+t≡0(modp),
然后同时乘上 i−1,t−1i^{-1},t^{-1}i−1,t−1,则可以得到 k∗t−1+i−1≡0(modp)k*t^{-1}+i^{-1}\equiv 0 \pmod{p}k∗t−1+i−1≡0(modp),
移项可得 i−1≡−k∗t−1(modp)i^{-1}\equiv -k*t^{-1} \pmod{p}i−1≡−k∗t−1(modp),
由于 k=⌊pi⌋k=\lfloor\frac{p}i\rfloork=⌊ip​⌋,t=p%it=p\%it=p%i,
所以 i−1≡−⌊pi⌋∗(p%i)−1(modp)i^{-1}\equiv -\lfloor\frac{p}i\rfloor*(p\%i)^{-1} \pmod{p}i−1≡−⌊ip​⌋∗(p%i)−1(modp),
即 i−1≡p−⌊pi⌋∗(p%i)−1(modp)i^{-1}\equiv p-\lfloor\frac{p}i\rfloor*(p\%i)^{-1} \pmod{p}i−1≡p−⌊ip​⌋∗(p%i)−1(modp)。

代码

#include <bits/stdc++.h>
using namespace std;
typedef long long ll;
const int maxn = 3e6 + 6;
ll inv[maxn];
int main()
{
    ios::sync_with_stdio(0);
    cin.tie(0);
    cout.tie(0);
    ll n, p;
    cin >> n >> p;
    inv[1] = 1; // 初始化inv[1]
    cout << inv[1] << '\n';
    for (ll i = 2; i <= n; i++)
    {
        inv[i] = p - p / i * inv[p % i] % p; // 递推求乘法逆元
        cout << inv[i] << '\n';
    }
    return 0;
}
Golang面试(一)莉莉丝游戏-Golang后端开发-中台部门 莉莉丝游戏-Golang后端开发-中台部门 开场白,双方自我介绍,对方介绍这个岗位情况,erlang语言,全部转向go。 聊项目,介绍IM架构以及使用Go写的服务简介 动态扩容相关问题:平常30万,现在100万,你们现在是如何应对的? 如果让你调整架构实现动态扩容,你会怎么做?回答了kafka,是一种,应该还要使用docker和k8s以及微服务框架等 如果使用kafka,你是如何确保消息有序?回答了redis,好像没回答到那个点 消息发送失败的问题,如何做到消息不丢?回答持久化存储、拉消息和ACK 发送失 阅读详情

相关推荐

【DMA】认识 DMA 及其工作流程(与传统CPU存取方式的区别)

【DMA】认识 DMA 及其工作流程(与传统CPU存取方式的区别)

challenglistic的博客 5万+

P3811 【模板】乘法逆元

P3811 【模板】乘法逆元

静谧幽蓝の神奇小屋 943

从Arduino IDE到Atmel Studio:ATmega328P开发的进阶之路

本文探讨了从Arduino IDE转向Atmel Studio进行ATmega328P开发的进阶路径。通过对比两者差异,详细介绍了Atmel Studio的环境配置、寄存器操作思维、烧录方法及高级调试功能,帮助开发者突破Arduino的封装限制,实现对单片机底层硬件的精细控制与性能优化,提升嵌入式开发的专业能力。

weixin_29193259的博客 122

P3811 【模板】乘法逆元-欧几里得+快速幂+线性递推

P3811 【模板】乘法逆元-欧几里得+快速幂+线性递推

weixin_52490191的博客 240

YOLO26改进 - 注意力机制 | ParNet并行子网络:多分支协同优化特征表达,增强模型判别能

本文介绍了ParNet注意力机制及其在YOLO26中的应用。ParNet注意力通过并行子网络结构,将网络层组织成多个子网络并行处理输入特征,降低了传统注意力机制在处理长序列时的计算复杂度。该机制采用VGG风格的块和特征融合策略,具有低深度高性能、参数效率高、可扩展性强和并行化能力好等创新点。我们将ParNet注意力引入YOLO26,在检测头部分应用该机制。通过实验训练改进后的模型,有望提升YOLO26在目标检测任务中的性能。

魔改工程师的博客 443

基于STM32的智能浇花系统毕业设计(全部资料)

摘要:本文设计了一种基于STM32单片机的智能浇花系统,集成了环境温湿度检测、土壤温湿度监测、LCD显示、Wi-Fi联网及手机APP远程控制等功能。系统通过传感器实时采集环境参数,自动控制水泵工作实现智能灌溉,同时支持用户通过手机APP远程监控和调节。论文详细阐述了硬件选型、软件设计及系统测试过程,验证了系统的稳定性和实用性。该设计为家庭园艺提供了智能化解决方案,具有节水高效、操作便捷等特点。关键词:STM32;智能灌溉;远程控制;环境监测;Wi-Fi通信。

3254968421的博客 1194

P3811 【模板】模意义下的乘法逆元 题解

P3811 【模板】模意义下的乘法逆元 题解

yaosichengalpha的博客 834

具身智能机器人算法控制研究进展综述

具身智能(Embodied Intelligence)作为人工智能与机器人学的交叉前沿领域,强调智能体通过物理身体与环境的持续交互涌现智能行为。近年来,随着基础模型(Foundation Models)、扩散策略(Diffusion Policy)、视觉-语言-动作(Vision-Language-Action, VLA)模型以及大规模机器人数据集(如Open X-Embodiment)的快速发展,具身智能机器人的算法控制范式正经历深刻变革。

VectorShift的博客 226

洛谷 P3811:【模板】模意义下的乘法逆元

● 在 C++ 中,若输入数据个数大于 10^5 时,推荐使用 scanf 而不是 cin 输入数据。这是因为 scanf 通常比 cin 更快。

hnjzsyjyj的专栏 1172

C/C++跳动的爱心(完整代码)

C语言实现跳动的爱心的完整代码。

AIGC 5842

Python 实战:全面解析“微信搜一搜”内容爬取,从入门到企业级架构

本文将带你从零搭建爬虫项目,采用 Requests、Scrapy、Selenium、Proxy 池、中间人监控(如 Fiddler/mitmproxy)、分布式调度、数据库持久化、断点续抓等方案,实现可持续、抗封能力强的内容抓取系统。理解“微信搜一搜”页面结构与 Javascript 渲染逻辑;使用 Scrapy 框架搭建分布式爬虫;使用 Selenium 模拟浏览器抓取;构建代理池提升爬取成功率;对抗验证码、IP 封禁与 cookie 过期问题;

2201_76125261的博客 1393

洛谷__P3811 【模板】模意义下的乘法逆元

a mod p的乘法逆元定义为方程: ax ≡ 1(mod p) 的解。

2301_79897757的博客 675

安装openclaw时出现npm error code ENOENT npm error syscall spawn git报错的解决方案

本文主要介绍了安装openclaw时出现npm error code ENOENT npm error syscall spawn git报错的解决方案,希望能对使用openclaw的同学们有所帮助。 文章目录 1. 问题描述 2. 解决方案

weixin_43178406的博客 12万+

洛谷 P3811 【模板】模意义下的乘法逆元

对于乘法逆元,我想大家再熟悉不过了,如过不知道的小伙伴们可以看来学习一下。

Jianghappy123456的博客 721

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

ET2012新版免狗免安装绿色软件

ET2012新版免狗免安祖昂绿色软件。,新界面,新视觉,

洛谷P3811 【模板】模意义下的乘法逆元

摘要:题目要求计算1到n所有整数在模质数p下的乘法逆元。输入为n和p,输出n行对应的逆元结果。解题思路采用线性递推法,初始化inv[1]=1,对于i>1的情况,利用公式inv[i] = -(p/i)*inv[p%i] mod p,通过迭代计算每个数的逆元。该方法时间复杂度O(n),适用于大规模数据。

2401_87622134的博客 175

蓝牙模块HM-10手册

蓝牙模块HM-10手册,该手册对蓝牙模块HM-10进行了详细的介绍和使用方法以及一些AT指令。

洛谷 P3811 【模板】模意义下的乘法逆元-普及/提高-

r^-1 + i^-1 = 0 mod p 即 i^-1 = -k。输入保证 $ p $ 为质数。求乘法逆元的方式有很多中。

weixin_37253733的博客 475

华为的C语言编程规范.pdf

华为技术有限公司内部技术规范。本规范制定了编写C语言程序的基本原则、规则和建议。从代码的清晰、简洁、可测试、安全、程序效率、可移植各个方面对C语言编程作出了具体指导。

逆元的板子介绍

就是三种求逆元的方法和板子题。

2401_85726738的博客 1061

线性求逆元模板_算法学习笔记(9):逆元

https://zhuanlan.zhihu.com/p/105467597在数论中,如果 ,我们就说 和 在模 意义下互为乘法逆元,记作 。逆元有什么用呢?我们常常遇到一些题目要求结果对一个大质数 取模,这是因为答案很大,出题人为了不麻烦大家写高精,就采取这样的方法。加减法和乘法对取模运算都是封闭的,所以你可以处处取模来避免溢出。一次取模和步步取模的结果是一样的但遇到除法时,就麻烦了:...

weixin_39765697的博客 152

拓展 欧几里得算法 求逆元_算法学习笔记(9):逆元

https://zhuanlan.zhihu.com/p/105467597在数论中,如果 ,我们就说 和 在模 意义下互为乘法逆元,记作 。逆元有什么用呢?我们常常遇到一些题目要求结果对一个大质数 取模,这是因为答案很大,出题人为了不麻烦大家写高精,就采取这样的方法。加减法和乘法对取模运算都是封闭的,所以你可以处处取模来避免溢出。一次取模和步步取模的结果是一样的但遇到除法时,就麻烦了:...

weixin_39549312的博客 433

【洛谷】P3811 【模板】乘法逆元

https://www.luogu.com.cn/problem/P3811题目描述: 给定n,pn,pn,p求1∼n1\sim n1∼n中所有整数在模ppp意义下的乘法逆元。这里aaa模ppp的乘法逆元定义为ax≡1(modp)ax\equiv1\pmod pax≡1(modp)的解。输入格式: 一行两个正整数n,pn,pn,p。输出格式: 输出nnn行,第iii行表示iii在模ppp下的乘法逆元。数据范围: 1≤n≤3×106,n...

数学、算法爱好者的博客 976

洛谷P3811 【模板】乘法逆元

洛谷P3811 【模板】乘法逆元 题目描述 给定n,p求1~n中所有整数在模p意义下的乘法逆元。 输入输出格式 输入格式: 一行n,p 输出格式: n行,第i行表示i在模p意义下的逆元。 输入输出样例 输入样例1: 10 13 输出样例1: 1 7 9 10 8 11 2 5 3 4 说明 1 ≤\leq≤ n ≤\leq≤ 3 ×\times× 10610 ^ 6106, n < ...

邮差将军的博客 714

《洛谷深入浅出进阶篇》模意义下的乘法逆元+洛谷P3811

给出定义: a*x = 1(mod)p,也就是a*x对p取模为1的时候,x就是a 的逆元,所以,当除以a的时候就相当于是乘上a的逆元x。(注意,模只对整数时有意义的,所以我们的变量都应该是整数)《洛谷深入浅出进阶篇》 欧几里得算法,裴蜀定理,拓展欧几里得算法————洛谷P1516 青蛙的约会-优快云博客。除以a就等于乘上a的乘法逆元,乘以a等于除以a的乘法逆元。算数意义上的乘法逆元指的是倒数,即:a*(1/a)=1。

louisdlee的博客 737

【线性递推求逆元(附证明)】洛谷 P3811 【模板】乘法逆元

线性递推求逆元 设 t = p / i,k = p % i,有:p = i * t + k 即 i * t + k 洛谷 P3811 【模板】乘法逆元 #include <iostream> #include <cstdio> #include <algorithm> #include <queue> #include <cmath>...

L_X_ 1873

洛谷 P3811 【模板】乘法逆元

洛谷 P3811 【模板】乘法逆元

qq_17807067的博客 906

洛谷 P3811 【模板】 乘法逆元

乘法逆元模板题题目背景描述输入格式输出格式提示样例输入样例输出样例总结AC代码 题目 背景 求逆元线性算法模板题 原题链接 描述 给定 n,pn,p 求 1\sim n1∼n 中所有整数在模 pp 意义下的乘法逆元 输入格式 一行两个正整数 n,p 输出格式 输出 n 行,第 i 行表示 i 在模 p 下的乘法逆元。 提示 1 ≤ n ≤ 3 × 10^6, n < p < 20000528 样例 输入样例 10 13 输出样例 1 7 9 10 8 11 2 5 3 4 总结 这道题就

weixin_48842132的博客 468

乘法逆元(洛谷-P3811)

题目描述 给定n,p求1~n中所有整数在模p意义下的乘法逆元。 输入输出格式 输入格式: 一行n,p 1≤n≤3×10^6,n<p<20000528,输入保证 p 为质数。 输出格式: n行,第i行表示i在模p意义下的逆元。 输入输出样例 输入样例#1: 10 13 输出样例#1: 1 7 9 10 8 11 2 5 3 4 思路:线性筛逆元模板题 源...

Alex_McAvoy的博客 798
上一篇: VOJ 扑克牌 题解 01背包dp
下一篇: VOJ 跳一跳 题解 动态规划
bbc_ouo
博客等级 码龄3年 2096粉丝 132原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值