没啥事干,想着推个式子玩玩。


题目链接

题意不过多赘述,直接上过程:

由题意得

\[\begin{cases} x\equiv a_1\,(mod\,\, n_1) \\ x\equiv a_2\,(mod\,\, n_2) \end{cases}
\]

展开 得

\[x=k_1· n_1+a_1=k_2· n_2+a_2\dots ①
\]

移项 得

\[k_1· n_1=(a_2-a_1)+k_2· n_2
\]
\[k_1· n_1\equiv a_2-a_1\,(mod\,\, n_2)
\]

令\(d=gcd(n_1,n_2)\),\(r=a_2-a_1\)。

可知:当\(d\mid r\)时,原式有解。

则有

\[k_1· n_1\equiv r\,(mod\,\, n_2)
\]
\[k_1\frac{n_1}{d}\equiv \frac{r}{d}\,(mod\,\,\frac{n_2}{d})
\]
\[k_1\equiv\frac{r}{d}·(\frac{n_1}{d})^{-1}\,(mod\,\,\frac{n_2}{d})
\]

存在$$k=\frac{r}{d}·(\frac{n_1}{d})^{-1}$$

使

\[k_1\equiv k\, (mod\,\,\frac{n_2}{d})
\]

即$$k_1=R·\frac{n_2}{d}+k\dots②$$

联立①②得

\[x=(k+R·\frac{n_2}{d})· n_1+a_1
\]
\[x=k·n_1+a_1+R·\frac{n_1·n_2}{d}
\]

最后

\[x=y\pmod n
\]

其中$$y=k·n_1+a_1,n=\frac{n_1·n_2}{d}$$

证毕。

有错误的话欢迎大家指出说明ლ(′◉❥◉`ლ)。


完结撒花

[POJ2891]Strange Way to Express Integers公式推导的更多相关文章

  1. 中国剩余定理+扩展中国剩余定理 讲解+例题(HDU1370 Biorhythms + POJ2891 Strange Way to Express Integers)

    0.引子 每一个讲中国剩余定理的人,都会从孙子的一道例题讲起 有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二.问物几何? 1.中国剩余定理 引子里的例题实际上是求一个最小的x满足 关键是,其中 ...

  2. POJ2891——Strange Way to Express Integers(模线性方程组)

    Strange Way to Express Integers DescriptionElina is reading a book written by Rujia Liu, which intro ...

  3. POJ2891 Strange Way to Express Integers

    题意 Language:Default Strange Way to Express Integers Time Limit: 1000MS Memory Limit: 131072K Total S ...

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

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

  5. POJ2891 Strange Way to Express Integers 扩展欧几里德 中国剩余定理

    欢迎访问~原文出处——博客园-zhouzhendong 去博客园看该题解 题目传送门 - POJ2891 题意概括 给出k个同余方程组:x mod ai = ri.求x的最小正值.如果不存在这样的x, ...

  6. POJ2891 - Strange Way to Express Integers(模线性方程组)

    题目大意 求最小整数x,满足x≡a[i](mod m[i])(没有保证所有m[i]两两互质) 题解 中国剩余定理显然不行....只能用方程组两两合并的方法求出最终的解,刘汝佳黑书P230有讲~~具体证 ...

  7. POJ2891 Strange Way to Express Integers [中国剩余定理]

    不互质情况的模板题 注意多组数据不要一发现不合法就退出 #include <iostream> #include <cstdio> #include <cstring&g ...

  8. POJ2891 Strange Way to Express Integers【扩展中国剩余定理】

    题目大意 就是模板...没啥好说的 思路 因为模数不互质,所以直接中国剩余定理肯定是不对的 然后就考虑怎么合并两个同余方程 \(ans = a_1 + x_1 * m_1 = a_2 + x_2 * ...

  9. [poj2891]Strange Way to Express Integers(扩展中国剩余定理)

    题意:求解一般模线性同余方程组 解题关键:扩展中国剩余定理求解.两两求解. $\left\{ {\begin{array}{*{20}{l}}{x = {r_1}\,\bmod \,{m_1}}\\{ ...

  10. poj2891 Strange Way to Express Integers poj1006 Biorhythms 同余方程组

    怎样求同余方程组?如: \[\begin{cases} x \equiv a_1 \pmod {m_1} \\ x \equiv a_2 \pmod {m_2} \\ \cdots \\ x \equ ...

随机推荐

  1. 5W1H聊开源之What——开源协议有哪些?

    开源许可协议是指开源社区为了维护作者和贡献者的合法权利,保证软件不被一些商业机构或个人窃取,影响软件的发展而开发的协议.开源协议规定了用户在使用开源软件时的权利和责任,虽然不一定具备法律效力,但是当涉 ...

  2. #容斥,完全背包#洛谷 1450 [HAOI2008]硬币购物

    题目 分析 直接多重背包应该会T掉,考虑硬币的种类比较少. 如果没有硬币数量的限制直接完全背包就可以了, 不然如果限制了硬币的数量那么第 \(d+1\) 次取这个硬币就不合法, 所以要减去 \(dp[ ...

  3. 深入解析 C 语言中的 for 循环、break 和 continue

    C语言中的 for 循环 当您确切地知道要循环执行代码块的次数时,可以使用 for 循环而不是 while 循环 for (语句 1; 语句 2; 语句 3) {   // 要执行的代码块 } 语句 ...

  4. C 语言运算符详解

    C 语言中的运算符 运算符用于对变量和值进行操作. 在下面的示例中,我们使用 + 运算符将两个值相加: int myNum = 100 + 50; 虽然 + 运算符通常用于将两个值相加,就像上面的示例 ...

  5. 定时运行BAT文件

    引用:https://www.cnblogs.com/lidj/archive/2012/07/07/2580598.html 1.Form.cs: using CC=System.Web.Mail; ...

  6. 重新点亮linux 命令树————用户和用户组的配置文件[八]

    前言 简单整理一下 正文 首先看下vim /etc/passwd 这个东西. 可以看到这些就是我们的用户表. 刚才我们创建的user1就在末尾了. 那么下面有这个x:1001:1001 这个是什么意思 ...

  7. Go 单元测试之mock接口测试

    目录 一.gomock 工具介绍 二.安装 三.使用 3.1 指定三个参数 3.2 使用命令为接口生成 mock 实现 3.3 使用make 命令封装处理mock 四.接口单元测试步骤 三.小黄书Se ...

  8. c#程序员必学清单补充

    作为 C# 程序员,除了上述经典书籍和开源框架外,还需要掌握以下技术: 1. .NET Core 和 ASP.NET Core:了解并熟练掌握 .NET Core 和 ASP.NET Core 框架, ...

  9. nginx请求头相关漏洞修复(http host&X-XSS-Protection)

    nginx请求头相关漏洞修复(http host&X-XSS-Protection) 参考链接:Nginx常见漏洞处理 - 码农教程 (manongjc.com) Web应用漏洞-NGINX各 ...

  10. 力扣586(MySQL)-订单最多的客户(简单)

    题目: 编写一个SQL查询,为下了 最多订单 的客户查找 customer_number . 测试用例生成后, 恰好有一个客户 比任何其他客户下了更多的订单. 查询结果格式如下所示. 进阶: 如果有多 ...