思路

中国剩余定理解决的是这样的问题

求x满足

\[\begin{matrix}x \equiv a_1(mod\ m_1)\\x\equiv a_2(mod\ m_2)\\ \dots\\x\equiv a_n(mod\ m_n)\end{matrix}
\]

在模数互质的情况下,解为

\[x=\sum_ia_iM_iM_i^{-1}(mod M)
\]

其中\(M=\prod_{i}m_i\),\(M_i=\frac{M}{m_i}\),\(M_i^{-1}\)为\(M_i\)在模\(m_i\)意义下的逆元

在模数不互质的情况下,我们需要扩展中国剩余定理

设有两个同余方程

\[x \equiv a_1(mod\ m_1)\\x\equiv a_2 (mod\ m_2)
\]

其中\(m_1\)与\(m_2\)不互质

可得到

\[x=a_1+m_1x_1\\
x=a_2+m_2x_2
\]

所以得到

\[a_1+m_1x_1 = a_2+m_2x_2
\]

变形后有

\[m_1x_1+m_2x_2=a_2-a_1
\]

用exgcd解出最小的\(x_1\)

则有

\[x \equiv (a_1+m_1x_1)(mod\ lcm(m_1,m_2))
\]

相当于把两个式子合并在一起,EXcrt就是将所有式子合并完即可

代码

因为不想写龟速乘所以用了__int128

#include <cstdio>
#include <algorithm>
#include <cstring>
#define int __int128
using namespace std;
int exgcd(int a,int b,int &x,int &y){
if(b==0){
x=1,y=0;
return a;
}
int req=exgcd(b,a%b,x,y);
int t=x;
x=y;
y=t-a/b*y;
return req;
}
int gcd(int a,int b){
return (b==0)?a:gcd(b,a%b);
}
int lcm(int a,int b){
return (a*b)/gcd(a,b);
}
int calc(int a,int b,int c){//ax+by=c
int d=gcd(a,b);
int x1,x2;
exgcd(a,b,x1,x2);
b/=d;
x=(x*(c/d)%b+b)%b;
return ans;
}
pair<int,int> merge(int a1,int m1,int a2,int m2){
int x1=calc(m1,m2,a2-a1);
return make_pair(x1*m1+a1,lcm(m1,m2));
}
int n,a[100100],m[100100];
signed main(){
long long mx;
scanf("%lld",&mx);
n=mx;
for(int i=1;i<=n;i++){
scanf("%lld",&mx);
m[i]=mx;
scanf("%lld",&mx);
a[i]=mx;
}
int mida=a[1],midm=m[1];
for(int i=1;i<n;i++){
pair<int,int> t= merge(mida,midm,a[i+1],m[i+1]);
mida=t.first;
midm=t.second;
}
printf("%lld\n",(long long)mida);
return 0;
}

P4777 【模板】扩展中国剩余定理(EXCRT)的更多相关文章

  1. 中国剩余定理(CRT) & 扩展中国剩余定理(ExCRT)总结

    中国剩余定理(CRT) & 扩展中国剩余定理(ExCRT)总结 标签:数学方法--数论 阅读体验:https://zybuluo.com/Junlier/note/1300035 前置浅讲 前 ...

  2. 扩展中国剩余定理 (exCRT) 的证明与练习

    原文链接https://www.cnblogs.com/zhouzhendong/p/exCRT.html 扩展中国剩余定理 (exCRT) 的证明与练习 问题模型 给定同余方程组 $$\begin{ ...

  3. 扩展中国剩余定理 (ExCRT)

    扩展中国剩余定理 (ExCRT) 学习笔记 预姿势: 扩展中国剩余定理和中国剩余定理半毛钱关系都没有 问题: 求解线性同余方程组: \[ f(n)=\begin{cases} x\equiv a_1\ ...

  4. 扩展中国剩余定理(EXCRT)快速入门

    问题 传送门 看到这个问题感觉很难??? 不用怕,往下看就好啦 假如你不会CRT也没关系 EXCRT大致思路 先考虑将方程组两两联立解开,如先解第一个与第二个,再用第一个与第二个的通解来解第三个... ...

  5. 扩展中国剩余定理 exCRT 学习笔记

    前言 由于 \(\{\mathrm{CRT}\}\subseteq\{\mathrm{exCRT}\}\),而且 CRT 又太抽象了,所以直接学 exCRT 了. 摘自 huyufeifei 博客 这 ...

  6. P4777 【模板】扩展中国剩余定理(EXCRT)/ poj2891 Strange Way to Express Integers

    P4777 [模板]扩展中国剩余定理(EXCRT) excrt模板 我们知道,crt无法处理模数不两两互质的情况 然鹅excrt可以 设当前解到第 i 个方程 设$M=\prod_{j=1}^{i-1 ...

  7. P4777 【模板】扩展中国剩余定理(EXCRT)&& EXCRT

    EXCRT 不保证模数互质 \[\begin{cases} x \equiv b_1\ ({\rm mod}\ a_1) \\ x\equiv b_2\ ({\rm mod}\ a_2) \\ ... ...

  8. [Luogu P4777] 【模板】扩展中国剩余定理(EXCRT) (扩展中国剩余定理)

    题面 传送门:洛咕 Solution 真*扩展中国剩余定理模板题.我怎么老是在做模板题啊 但是这题与之前不同的是不得不写龟速乘了. 还有两个重点 我们在求LCM的时候,记得先/gcd再去乘另外那个数, ...

  9. 扩展中国剩余定理(EXCRT)学习笔记

    扩展中国剩余定理(EXCRT)学习笔记 用途 求解同余方程组 \(\begin{cases}x\equiv c_{1}\left( mod\ m_{1}\right) \\ x\equiv c_{2} ...

随机推荐

  1. Vue系列之 => 动画

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...

  2. 如何修改Xampp服务器上的mysql密码(图解)

    https://www.jb51.net/article/111289.htm https://www.cnblogs.com/Leequik/p/5323795.html 1.点击MySQL的adm ...

  3. sitecore系统教程之Item快速了解

    项目是Sitecore网站的基本构建块.项目可以表示构成网页的任何类型的信息,例如,一段文本,媒体文件,布局等. 项目始终具有名称,唯一标识项目的ID,并且它基于定义项目包含的字段的模板.此外,项目可 ...

  4. JS实战

    1. jquery取消点击事件 $("#dashboard").unbind("click"); 2.jquery绑定鼠标滑过,离开事件 $("#da ...

  5. Hive常用语句

    文章目录 1 显示分区 2 添加分区 3 删除分区 4 修改分区 5 添加列 6 修改列 7 修改表属性 8 表的重命名 显示分区 show partitions iteblog; 添加分区 ALTE ...

  6. Linux服务器---邮件服务openwebmail安装

    安装openwebmail  openwebmail提供了可视化的邮件管理系统,它运行在Apache环境下. 1.安装必备软件 [root@localhost ~]# yum install –y p ...

  7. [转载]window.location.href的用法(动态输出跳转)

    无论在静态页面还是动态输出页面中window.location.href都是不错的用了跳转的实现方案   javascript中的location.href有很多种用法,主要如下. self.loca ...

  8. Java的字段初始化规律

    package 代码测试; public class InitializeBlockClass { {field=200;} public int field=100; public Initiali ...

  9. Java并发编程之AbstractQueuedSynchronizer源码分析

    为什么要说AbstractQueuedSynchronizer呢? 因为AbstractQueuedSynchronizer是JUC并发包中锁的底层支持,AbstractQueuedSynchroni ...

  10. 简单的图像显著性区域特征提取方法-----opencv实现LC,AC,FT

    https://blog.csdn.net/cai13160674275/article/details/72991049?locationNum=7&fps=1 四种简单的图像显著性区域特征 ...