Two Arithmetic Progressions

excrt的看这篇题解

注意记住两个等差数列的交集的公差是\(lcm(d_1,d_2)\)

我们可以将其推广到多维,证明一下

\(b_1+k_1d_1=b_2+k_2d_2=...=b_n+k_nd_n=x\)

于是有\(x\equiv b_i(mod \: d_i)(i=1,2,3...n)\)

这显然就是一个excrt,于是可以得到解的公差为\(lcm(d_1,d_2,...,d_n)\)

然后坑也要注意一下。题解中WA #28那个错误就是excrt过程中方程无解,此时应该直接输出\(0\),但是题解之前没有,而是继续下面的代码

这道题目的其他做法比如exgcd和根号分块有空也学一下

posted @ 2024-02-15 22:46  最爱丁珰  阅读(22)  评论(0)    收藏  举报