数学题

数学题笔记整理

推式子太快乐啦,推不对也很快乐

\(Update: 2023.10.25\ to\ 10.26\)

\[a^b\bmod m \]

\[a^b=\begin{cases} a^b\bmod m\ |\ b<\varphi(m)\\ a^{\varphi(m)+m\bmod\varphi(m)} \bmod m\ |\ b\ge\varphi(m) \end{cases}\]

\[{n+m \choose n}\bmod p=lucas(n+m,n) \]

\[lucas(x,y)= \begin{cases} 1\ |\ y=0\\ lucas(\lfloor\frac{x}{p}\rfloor,\lfloor\frac{y}{p}\rfloor)\times{x\bmod p \choose y\bmod p}\bmod p\ |\ y>0 \end{cases} \]

\[ax\equiv 1 (\bmod\ p) \]

\[b=p\bmod a=p-\lfloor\frac{p}{a}\rfloor \]

\[x=a^{-1}\equiv a^{-1}\times b\times b^{-1}\equiv a^{-1}\times(p-\lfloor\frac{p}{a}\rfloor)\times (p\bmod a)^{-1}(\bmod\ p) \]

\[:s=\prod\limits_{i=1}^na_i\\ \]

\[\sum\limits_{i=1}^n\frac{k^i}{a_i}\\ \]

\[\sum\limits_{i=1}^nk^i\sum\limits_{i=1}^n\frac{1}{a_i}\\ \]

\[\sum\limits_{i=1}^nk^i\sum\limits_{i=1}^n\frac{1}{a_i}\\ \]

\[\sum\limits_{i=1}^n\frac{k^i\times\frac{s}{a_i}}{s}\\ \]

\[s^{-1}\times\sum\limits_{i=1}^nk^i\times\frac{s}{a_i}\\ \]

化简完了只需要对 \(s\) 求一次逆元即可,可以实现 \(\Theta(n+\log n)\) 复杂度

\[c=\frac{a}{b}\bmod 19260817 \]

输入的时候取余,算 \(b^{-1}\times a\) 即可

\[\sum\limits_{p\in prime}\sum\limits_{i=1}^{n}\sum\limits_{j=1}^{n}\gcd(i,j)=p\\ \]

\[\sum\limits_{p\in prime}\sum\limits_{i=1}^{\lfloor\frac{n}{p}\rfloor}\sum\limits_{j=1}^{\lfloor\frac{n}{p}\rfloor}\gcd(i,j)=1\\ \]

\[\sum\limits_{p\in prime}\left(2\times\sum\limits_{i=1}^{\lfloor\frac{n}{p}\rfloor}\left(\sum\limits_{j=1}^i[\gcd(i,j)=1]\right)-1\right)\\ \]

\[\sum\limits_{p\in prime}\left(2\times\sum\limits_{i=1}^{\lfloor\frac{n}{p}\rfloor}\varphi(i)-1\right)\\ \]

最终可以预处理 \(\varphi(i)\) 的前缀和,达到 \(\Theta(n)\) 求解

\[:x=k_1n+i,y=k_2n+j,c_i=a_i+i\\ \]

\[x+a_{x\bmod n}=y+a_{y+\bmod n}\\ \]

\[x-y=a_{y\bmod n}-a_{x\bmod n}\\ \]

\[k_1n+i-k_2n-j=a_j-a_i\\ \]

\[(k_1-k_2)n=a_j-a_i-i+j\\ \]

\[(k_1-k_2)n=(a_j+j)-(a_i+i)\\ \]

\[(k_1-k_2)n=c_j-c_i\\ \]

\[\because k_1-k_2\in \Z\\ \]

\[\therefore (c_j-c_i)|n\\ \]

\[c_j\equiv c_i(\bmod n) \]

用桶存储相同余数的数的数量,判断个数是否 \(\ge 2\)

\(2^{2^{2^2}}\) 和扩展欧拉定理的式子 \(a^{\varphi(m)+m\bmod\varphi(m)} \bmod m\ |\ b\ge\varphi(m)\) 很像,可以直接递归处理

\[\sum\limits_{i=1}^n\gcd(i,n) \]

\[\sum\limits_{j=1}^n j\times\sum\limits_{i=1}^n[\gcd(i,n)=j] \]

\[\sum\limits_{j=1}^n j\times\sum\limits_{i=1}^n [\gcd(\lfloor\frac{i}{j}\rfloor,\lfloor\frac{n}{j}\rfloor)=1](j|i,j|n) \]

\[\sum\limits_{j=1}^n j\times\varphi(\lfloor\frac{n}{j}\rfloor)(j|n) \]

\[\sum_{j|n} j\times\varphi(\lfloor\frac{n}{j}\rfloor) \]

因为 \(n\le 2^{32}\) 预处理 \(1\sim n\) 的欧拉函数值空间开不下,并且时间复杂度太大,考虑对于每一个 \(\lfloor\frac{n}{j}\rfloor\) 进行 \(\Theta(\sqrt{n})\) 求解 \(\varphi(\lfloor\frac{n}{j}\rfloor)\) ,总复杂度是 \(\Theta(\sqrt{n}+d(n)\sqrt{n})\)

连接 \((1,1)\) 点和图中任意一点,得到一个一次函数 \(y=kx\) , 求有多少不同的 \(k\)

因为 \(k=\frac{y}{x}\) ,要保证 \(\frac{y}{x}\) 不同,只有 \(\gcd(x,y)=1\) 时,求解欧拉函数计算即可,\((1,1)\) 点单算

考虑确定一个最小公因数 \(a_0\) ,保证顺序不影响最终结果,序列中的每一个数应为 \(\sum\limits_{i=1}^{k}i\times a_0\) ,所以考虑枚举 \(a_0\) ,后面序列中的数进行组合数计算,为 \({\frac{n}{a_0}-1\choose k-1}\) ,预处理阶乘和阶乘的逆元即可

posted @ 2023-10-26 12:14  Tyrue  阅读(10)  评论(0编辑  收藏  举报