首页 > 其他分享 >单位根反演小记

单位根反演小记

时间:2024-03-04 11:57:50浏览次数:24  
标签:le cdot dfrac sum 单位根 反演 choose omega 小记

核心式子

\[[k|n]=\dfrac 1k\sum_{i=0}^{k-1} \omega_k ^{i\cdot n} \]

证明:

  • 当 \(n\) 是 \(k\) 的因数时,\(\dfrac 1k\sum\limits_{i=0}^{k-1} \omega_k ^{i\cdot n}=\dfrac 1k\sum\limits_{i=0}^{k-1} \omega_k^0 =\dfrac 1k\cdot k=1\)

  • 当 \(n\) 不是 \(k\) 的因数时,\(\dfrac 1k\sum\limits_{i=0}^{k-1} \omega_k ^{i\cdot n}= \dfrac 1k\cdot \dfrac{\omega_k^{kn} -1}{\omega_k^n -1}=\dfrac 1k\cdot \dfrac{1 -1}{\omega_k -1} =0\)

然后我们知道 \(w_n ^k \equiv a^{\frac{p-1}n\cdot k} \pmod p\) 就可以求了,其中 \(a\) 是 \(p\) 的原根。


例题

题意:多测,给出 \(n,s,a_0,a_1,a_2,a_3\),求

\[(\sum\limits_{i=0}^n {n \choose i}\cdot s^i\cdot a_{i\bmod 4}) \bmod 998244353 \]

\(1\le T\le 10^5,\space 1\le n\le 10^{18},\space 1\le s,a_0,a_1,a_2,a_3\le 10^8\)

推式子

\[\begin{aligned} \text{原式} &= \sum_{r=0}^3 a_r\sum_{i=0} ^n [i\bmod 4=r]{n \choose i} \cdot s^i \\ &= \sum_{r=0} ^3 a_r\sum_{i=0} ^n [4|(i-r)] {n\choose i} \cdot s^i\\ &= \sum_{r=0} ^3 a_r\sum_{i=0} ^n \frac 14 \sum_{j=0} ^3 \omega_4 ^{(i-r)j} {n\choose i} \cdot s^i\\ &= \frac 14\sum_{r=0} ^3 a_r\sum_{i=0} ^n \sum_{j=0}^3 \omega_4^{ij} \cdot \omega_4^{-rj} {n\choose i} \cdot s^i \\ &= \frac 14\sum_{r=0} ^3 a_r\sum_{j=0} ^3 \omega_4^{-rj} \sum_{i=0} ^n (\omega_4^j)^i \cdot s^i {n\choose i} \\ &= \frac 14\sum_{r=0} ^3 a_r\sum_{j=0} ^3 \omega_4^{-rj} (\omega_4^j \cdot s +1)^n \end{aligned} \]

直接做,快速幂,\(O(T\log p)\)。 记录


题意:给出 \(n,p,k\),求

\[\sum_{i=0}^n {n \choose i}\cdot p^i\cdot \lfloor \frac ik\rfloor \pmod {998244353} \]

\(1\le n,p\le 998244353,\space k\in \{2^w| 0\le w\le 20\}\)

把 \(\lfloor\dfrac ik\rfloor\) 拆成 \(i\) 和 \(i\bmod k\) 两部分,最后再除以 \(k\)。

\[\begin{aligned} \text{第一部分式子} &= \sum_{i=0}^n {n\choose i} \cdot p^i \cdot i \\ &= \sum_{i=1}^n {n-1 \choose i-1} \cdot p^i \cdot n \\ &= np \sum_{i=0}^{n-1} {n-1\choose i} p^i \\ &= np(p+1)^{n-1} \\ \\ \text{第二部分式子} &= \sum_{i=0}^n {n\choose i} \cdot p^i \cdot (i\bmod k) \\ &= \sum_{r=0}^{k-1} r\sum_{i=0}^n [i\bmod k=r] {n\choose i} \cdot p^i \\ &= \sum_{r=0}^{k-1} r\sum_{i=0}^n [k|(i-r)] {n\choose i} \cdot p^i \\ &= \sum_{r=0}^{k-1} r \sum_{i=0}^n \sum_{j=0} ^{k-1} \omega_k^{(i-r)j} {n\choose i}\cdot p^i \\ &= \sum_{r=0}^{k-1} r \sum_{i=0}^n \sum_{j=0} ^{k-1} \omega_k^{ij}\cdot \omega_k^{-rj} {n\choose i}\cdot p^i \\ &= \sum_{r=0}^{k-1} r \sum_{j=0} ^{k-1} \omega_k^{-rj} \sum_{i=0}^n (\omega_k^j)^i \cdot {n\choose i} \cdot p^i \\ &= \sum_{r=0}^{k-1} r \sum_{j=0} ^{k-1} \omega_k^{-rj} (\omega_k^j \cdot p+1)^n\\ &= \sum_{j=0} ^{k-1} (\omega_k^j \cdot p+1)^n \sum_{r=0}^{k-1} r\cdot \omega_k^{-rj}\\ \end{aligned} \]

注意右边枚举 \(r\) 的式子,不妨设为 \(S(k,\omega_k^{-j})\),有

\[S(n,k)=\sum_{i=0}^{n-1} i\cdot k^i \]

\[\begin{aligned} k\cdot S(n-k)-S(n,k) &= \sum_{i=1}^n (i-1)k^i - \sum_{i=0}^{n-1}i\cdot k^i \\ &= -\sum_{i=1}^{n-1} k^i +(n-1)k^n \\ &= -\frac{k^n-k}{k-1} +(n-1)k^n \end{aligned} \]

注意到每次带入的 \(S(n,k)\) 中 \(k\) 总是 \(n\) 的单位根的幂,有 \(k^n=1\),则

\[\begin{aligned} -\frac{k^n-k}{k-1} +(n-1)k^n &= -\frac{1-k}{k-1}+(n-1) \\ &= 1+(n-1) \\ &= n \end{aligned} \]

因此 \(S(n,k)=\dfrac n{k-1}\)。

特别的,当 \(k=1\) 时,\(S(n,1)=\sum_{i=0}^{n-1} i = \dfrac{n(n-1)}2\)。

直接求,\(O(k\log p)\)。记录

标签:le,cdot,dfrac,sum,单位根,反演,choose,omega,小记
From: https://www.cnblogs.com/Sktn0089/p/18051511

相关文章

  • 2024考研小记
    距离26日考研成绩公布已经过去了5天,每天会出现很多不同的想法,有时也会怀疑自己要不要继续坚持。想到自己也才稀里糊涂备考了4个月左右,自己取得这样的成绩也是理所应当的。没什么好难过的。随着时间的推移,毕业设计也推上了日程,整个人还是感觉到压力很大,很焦虑。但今天自己还是花......
  • 数论小记
    gcd辗转相除法,也可以直接用__gcd。线性筛保证每个数只会被其最小的质数筛掉,复杂度\(O(n)\),也可以用来处理积性函数,通常作为更复杂的筛法的预处理。exgcd可用于求解不定方程:\(ax+by=gcd(a,b)\)推导如下:\[ax+by=gcd(a,b)=gcd(b,a\bmodb)=bx'+(a\bmodb)y'......
  • JS/Vue 学习小记
    可能要写点轮子。。。先学学前端知识吧,记录一下。遍历:for(letiofS){i...}for(letiinS){S[i]...}JS是弱类型的语言。目前感觉到的特性有:数组不同元素可以是不同类型的函数返回值不需要声明,直接functionF()就可以JS中对象用大括号表示,成员可以是各种类型,包......
  • 线性基小记
    Part0:前置知识线性空间是一个关于以下两个运算封闭的向量集合:向量加法\(a+b\)。标量乘法\(k*a\)。给定一个向量集合\(A=\{a_1,a_2,\dots,a_k\}\),若向量\(b\)能由\(a_1,a_2,\dots,a_k\)经过向量加法和标量乘法运算得出,则称向量\(b\)能被向量\(a_1,a_2,\dots,a_k\)......
  • 莫比乌斯反演
    积性函数:若函数\(f(x)\)满足:\(f(1)=1\)且\(∀x,y∈N_+,\gcd(x,y)=1\)都有\(f(xy)=f(x)f(y)\),则称它为积性函数。若函数\(f(x)\)满足:\(f(1)=1\)且\(∀x,y∈N_+\)都有\(f(xy)=f(x)f(y)\),则称它为完全积性函数。性质:若\(f(x),g(x)\)均为积性函数,那么则以下函数也为......
  • KTT 小记
    来源来自EI的2020年的论文《浅谈函数最值的动态维护》。适用范围给出一些形如\(k_ix_i+b_i\)的一次函数且\(x_i\)为已知值,支持动态对一次函数的\(x_i\)或\(b_i\)区间加,并快速查询一次函数的结果最值。思想与实现使用线段树,记录一个阈值\(\Deltax\)表示“当前......
  • SAM小记
    构建其实也写了,但没放上来直接放题吧【模板】后缀自动机(SAM)首先我们求出SAM然后,我们对于每一个前缀对应的节点的edp+1,因为这个串是最长的串(为叶子)然后dfs子树求和,求出edp,然后就可以做了P2408不同子串个数SAM中一个节点代表的串的个数是\(len[now]-len[link[now]]\),对于每......
  • 莫比乌斯反演学习笔记
    莫比乌斯反演目录莫比乌斯反演反演公式&性质例题[HAOI2011]ProblembYY的GCD于神之怒加强版Crash的数字表格/JZPTAB[SDOI2014]数表[SDOI2015]约数个数和反演公式&性质\[f(n)=\sum_{d|n}g(d)\\g(n)=\sum_{d|n}\mu(d)f(\fracnd)\]感觉我不太会用上面那个我只会用莫比乌斯函......
  • 【数论】卷积反演大集合
    不知道为啥脑抽要学数论,骂声一片中发现数论还没入门(悲)。1.狄利克雷卷积与数论函数1.1数论函数定义:数论函数为值域为整数的函数。简单数论函数:\(I(n)\),恒等函数,恒等为\(1\)。\(e(n)\),元函数,卷积中的单位元,若\(n=1\),\(e(n)=1\)。否则为\(e(n)=0\)。\(id(n)\),单位函数,\(......
  • Java虚拟机小记
    目录运行时数据区域Java堆对象创建对象的内存布局对象的访问定位句柄直接指针GC判断对象是否已死引用计数算法可达性分析算法引用的类别垃圾收集算法分代收集理论标记清除算法标记复制算法标记整理算法实现细节并发的可达性分析垃圾收集器serial收集器ParNew收集器ParallelScaven......