欧拉定理: \(a^{\varphi(m)} \equiv 1 \pmod m\) 推论 \(1\) :\(a^{\varphi(p-1)}\equiv 1 \pmod p\) ,其中 \(p\) 是质数(费马小定理)。 推论 \(2\) :若 \(a\perp m\) ,那么 \(a^{-1} \equiv a^{\varphi(m)-1} \pmod m\) (求逆元)。 推论 \(3\) (扩展欧拉定理):对于 \(b \ge m\) ,\
Codeforces 题面传送门 & 洛谷题面传送门 虽说是一个 D1B,但还是想了我足足 20min,所以还是写篇题解罢( 首先注意到这个式子里涉及两个参数,如果我们选择固定一个并动态维护另一个的决策,则相当于我们要求方程 \(ax^3+bx^2+cx+d\equiv k\pmod{p}\) 的根,而这是很难维护的,因此这个思路行
逆元 如果 \(gcd(a,m) = 1\) 且存在唯一的 \(b\) 存在 \(a \times b \equiv 1 \pmod m\) 且 \(1\leq b<m\), \(b\) 为 \(a\) 在模 \(m\) 意义下的逆元 费马小定理 \(a ^ {p - 1}\equiv 1\pmod p (gcd(a, p) = 1)\) 欧拉定理 \(a ^ {\phi(m)} \equiv 1 \pmod m (gcd(a, m) = 1)\
逆元 什么是逆元 在数论中,如果 \(ab \equiv 1 \pmod{p}\) ,我们就说 \(a\) 和 \(b\) 在模 \(p\) 意义下互为乘法逆元,记作 \(a = inv(b)\)。 逆元有什么用呢? 我们常常遇到一些题目要求结果对一个大质数 \(p\) 取模,这是因为答案很大,出题人为了不麻烦大家写高精,就采取这样的方法。加减
阶(multiplicative order) \(\textbf{Def.}\):\(\delta_m(a)\) 为最小的 \(n\) 使得 \(a^n\equiv 1\pmod m\),其中 \((a,m)=1\)。 Observation 1:\(\boxed{a^0\not\equiv a^1\not\equiv\dots\not\equiv a^{\delta_m(a)-1}\pmod m}\)。 \(\textbf{Proof}
中国剩余定理 有物不知其数,三三数之剩二,五五数之剩三,七七数之剩二。问物几何? 解线性方程组: \(\left(\begin{matrix} x\equiv b_1 \pmod{a_1}\\x \equiv b_2 \pmod{a_2}\\ \cdots \\ x\equiv b_n \pmod{a_n}\end{matrix} \right)\) 解法 \(int \ lcj=a_1*a_2\cdots*a_n,m_i=lcj/a[
Codeforces 题面传送门 & 洛谷题面传送门 一道名副其实(beautiful)的结论题。 首先看到这道设问方式我们可以很自然地想到套用斐波那契数列的恒等式,注意到这里涉及到 \(F_{a+id}\),因此考虑斐波那契数列组合恒等式 \(F_{m+n+1}=F_mF_{n}+F_{m+1}F_{n+1}\),具体证明戳这里,这里就不再赘
题面传送门 我们考虑倍增,即算出\(G_0\)使得\(G_0*F\equiv1\pmod{x^{\frac{n+1}{2}}}\) 然后我们要求的就是\(G*F\equiv1\pmod{x^{\frac{n+1}{2}}}\) 所以\(G-G_0\equiv0\pmod{x^{\frac{n+1}{2}}}\) 两边平方,得到\((G-G_0)^2\equiv0\pmod{x^{n+1}}\) 即\((G-G_0)^2\equiv0\pmod{x^{
今天调用py文件时 遇到了一点问题,但是不知道问题在哪,所以可以在vs的控制台输出一下py出现的问题 pMod = PyImport_ImportModule("cnn_models_class_old"); if (!pMod) { if (pMod == nullptr) { PyErr_Print(); exit(1); } printf("Import Module failed!\n"); }
一、题目: 二、思路: 这道题思路非常妙
首先你要知道什么是 BSGS。 BSGS 用于求解形如 \(a^x\equiv b\pmod p\) 的高次同余方程,其中保证 \(p\) 为质数。 根据费马小定理定理,当 \(p\) 为质数时,\(a^{p-1}\equiv 1\pmod p\)。 所以当 \(x\) 有解 \(>p-1\) 时,也必然有 \(y=x-(p-1)\) 为方程的解,换言之,保证 \(0\sim p-1\) 内
小凯的疑惑:给定正整数\(a \perp b\),对于\(x,y \ge 0\),求出\(ax + by\)无法表示的最大正整数。 一个经典思路是从同余最短路的角度看待这个问题:建立一个编号0~b-1的图,对于\(0 \le i \le b-1\),建边\(\{i,(i+a) \bmod b,a\}\),初始时令\(dis_0=0\),跑dijkstra。这样我们就可以对于模b剩
数论学习笔记 记录的侧重点为一些个人认为需要证明的性质定理,所以概念可能不成体系且跳跃 P:质数集 取模 取模的定义: \(a \bmod b = a - \lfloor \frac{a}{b} \rfloor b\) 但是注意c++的%的除法并不是向下取整,而是向零取整,这就会导致负数取模完还是负数,如: -6%5=-6-(-6/5)*5=-1
〇、前言 ¶ 今日,余见困于问 ABC193E 者,甚急,故作此文以记之。 壹、问题描述 ¶ 求解同余方程组: \[\begin{cases} x\equiv r_1\pmod{m_1} \\ x\equiv r_1\pmod{m_1} \\ x\equiv r_1\pmod{m_1} \\ \cdots \\ x\equiv r_n\pmod{m_n} \\ \end{cases} \]保证 \(\forall i\neq j,\gcd(m_
from wikipedia In group theory, a branch of mathematics, the baby-step giant-step is a meet-in-the-middle algorithm for computing the discrete logarithm or order of an element in a finite abelian group due to Daniel Shanks. The discrete log problem is o
Coloring Torus AGC030C:https://www.luogu.com.cn/problem/AT4512 考虑如果 \(k\le n\),那么直接一行一种颜色就行了 如果 \(k>n\),考虑可以转化为在对角线上染色,由于这个相邻的定义是循环的,所以合法: 但这样仍然只能构造最多 \(n\) 中颜色,但发现可以把一部分对角线交替染色: 于是就
目录正文引入大数翻倍法复杂度证明大数翻倍法的优势最后的最后:上代码! 注:做法和思路是 zhx 在一次讲课中提出的,如有侵权,请联系作者删除 其实别的题解也有提到过暴力做法,但这里将会给出更加严谨的复杂度的证明 正文 引入 我们知道,中国剩余定理是一种用来求解类似于 \[\begin{cases}
题目传送门 根据题目大意,设答案为 \(k\) ,不难列出式子: \[x+km \equiv y+kn \pmod L \]移项,得 \[x-y \equiv kn-km \pmod L \]\[kn-km \equiv x-y \pmod L \]合并同类项 \[(n-m)k \equiv x-y \pmod L \]显然这就是一个线性同余方程,先把它变成一个不定方程 \[(n-m)k+Lr=(x-y) \]exgc
1. 组合数取模 求 \(\dbinom nm\bmod p\) 1. \(n,m\le 200\),\(p\) 任意 递推 2. \(n,m\le 10^6\),\(p\ge 10^9\) 素数 预处理 \(n!\),\(m!^{-1}\),\((n-m)!^{-1}\) 即可 . 3. \(n,m\le 10^6\),\(p\le 2000\) 素数 注意到 \(n\) 可能是 \(p\) 的倍数,故逆元可能不存在 . 引入 Lucas 定
本文主要讲了逆元、(扩展)欧拉定理。 快速模幂 P1226 【模板】快速幂||取余运算 假设\(p\)为奇数,则\(b^p=b^{2\lfloor\frac{p}{2}\rfloor+1}=(b^2)^{\lfloor\frac{p}{2}\rfloor}\times b\),否则\(b^p=b^{2\lfloor\frac{p}{2}\rfloor}=(b^2)^{\lfloor\frac{p}{2}\rfloor}\) 这样可以写
前言 多项式博大精深啊……个人整理了一个易于背诵的简化版,如果想看详细证明请另寻资源( 日后可能会再开一个代码详解,用于帮助和我一样理解不了还背不过的人( 更新大致跟随真实学习进度,如果咕咕咕了也很正常( 约定 给定多项式\(F(x)=\sum\limits_{k=0}^n a_kx^k\),非必要时会省略为\(F
1. 前置知识 扩展欧几里得:对于不完全为\(0\)的非负整数\(a,b\),\(\gcd(a,b)\)表示\(a,b\)的最大公约数,必然存在整数对\(x,y\)使得\(\gcd(a,b)=ax+by\)。 费马小定理:\(a^{p-1}\equiv 1\pmod p\) 逆元: 求解公式\((a/b)\% p\)时,因\(b\)可能会过大,会出现爆精度的情况,所以需变除法为
Description 定义 \(f(x)\) 表示 \(x\) 的各个数位之和。现在要求 \(\sum_{i=l}^rf(i)\bmod a\)。 显然 ans=solve(l,r)%a; if(ans<=0) ans+=a; 会在 \(\sum_{i=l}^rf(i)\equiv 0\pmod a\) 时输出错误。给定 \(a\),请你构造一个 Hack 数据。 \(1\leq a\leq 10^{18}\),构造出的 \(l,r
多项式牛顿迭代 给定多项式 g ( x ) g(x) g(x),求 f
斐波那契数列的模意义下循环节 以 \(f_0 = 0,f_1 = 1,f_n = f_{n-1}+f_{n-2}\) 为例。其中 \(a,b\) 为给定的常数。\(10^3\) 组询问,每次给定模数 \(p(< 10^9)\),求 \(f\) 的最小循环节。(其实\(f_0,f_1\),以及递推式不同,也可以用类似的方法) 模板题。博客 可以找出任意一个循环节,那么