Loj#6247-九个太阳【单位根反演】
正题
题目链接:https://loj.ac/p/6247
题目大意
给出n,kn,kn,k求
∑0≤i≤n,i∣k(ni)\sum_{0\leq i\leq n,i|k}\binom{n}{i}0≤i≤n,i∣k∑(in)
对998244353998244353998244353取模
1≤n≤1015,1≤k≤220,k=2p(p∈N)1\leq n\leq 10^{15},1\leq k\leq 2^{20},k=2^p(p\in N)1≤n≤1015,1≤k≤220,k=2p(p∈N)
解题思路
随便找的一题竟然是单位根反演,不过很基础而且很裸。
首先单位根反演的式子[i∣k]=1k∑j=0k−1ωki×j[i|k]=\frac{1}{k}\sum_{j=0}^{k-1}\omega_k^{i\times j}[i∣k]=k1∑j=0k−1ωki×j
然后带到这题的式子就是
∑i=0n1k∑j=0k−1ωki×j(ni)\sum_{i=0}^n\frac{1}{k}\sum_{j=0}^{k-1}\omega_k^{i\times j}\binom{n}{i}i=0∑nk1j=0∑k−1ωki×j(in)
然后把jjj提出来
1k∑j=0k−1∑i=0n(ωki)j(ni)\frac{1}{k}\sum_{j=0}^{k-1}\sum_{i=0}^n(\omega_k^{i})^j\binom{n}{i}k1j=0∑k−1i=0∑n(ωki)j(in)
然后二项式定理
1k∑j=0k−1(ωki+1)n\frac{1}{k}\sum_{j=0}^{k-1}(\omega_k^{i}+1)^nk1j=0∑k−1(ωki+1)n
额但是nnn很大直接用复数精度肯定会炸,但是998244353−1=223×7×17998244353-1=2^{23}\times 7\times 17998244353−1=223×7×17…又因为k=2pk=2^pk=2p,其实就是类似于NTTNTTNTT的思路我们直接用原根ωk1=gP−1k\omega_k^1=g^{\frac{P-1}{k}}ωk1=gkP−1就好了。
时间复杂度O(klogn)O(k\log n)O(klogn)
code
#include<cstdio>
#include<cstring>
#include<algorithm>
#define ll long long
using namespace std;
const ll P=998244353;
ll n,k,ans;
ll power(ll x,ll b){ll ans=1;while(b){if(b&1)ans=ans*x%P;x=x*x%P;b>>=1;}return ans;
}
signed main()
{scanf("%lld%lld",&n,&k);ll g=power(3,(P-1)/k),z=1;for(ll i=0;i<k;i++,z=z*g%P)(ans+=power(z+1,n)%P)%=P;printf("%lld\n",ans*power(k,P-2)%P);return 0;
}
Loj#6247-九个太阳【单位根反演】相关推荐
- loj #6247. 九个太阳
求 $\sum\limits_{i=1}^n [k | i] \times C_n^i$ 膜 $998244353$ $n \leq 10^{15},k \leq 2^{20}$ $k$ 是 $2$ ...
- 【LOJ 6485】LJJ 学二项式定理(单位根反演)(模板)
LJJ 学二项式定理 题目链接:LOJ 6485 题目大意 求一个式子: ∑ i = 0 n ( ( n i ) s i a i m o d 4 ) \sum\limits_{i=0}^n(\bino ...
- 单位根反演[loj6485]LJJ 学二项式定理
前言 之前写反演的博客对于单位根反演只提了FFT 这里补一下一个应用 单位根反演 fi=∑j=0n−1ωni∗jgj⇔gi=∑j=0n−1ωn−i∗jnfjf_i=\sum_{j=0}^{n-1}\o ...
- POJChallengeRound2 Guideposts 【单位根反演】【快速幂】
题目分析: 这题的目标是求$$ \sum_{i \in [0,n),k \mid i} \binom{n}{i}G^i $$ 这个形式很像单位根反演. 单位根反演一般用于求:$ \sum_{i \in ...
- #3328. PYXFIB(单位根反演)
#3328. PYXFIB ∑i=0⌊nk⌋Cni×k×Fi×k∑i=0nCni×Fi×[i≡0(modk)]i≡0(modk),单位根反演有1k∑j=0k−1wkij1k∑i=0nCni×Fi∑j= ...
- P5591 小猪佩奇学数学(单位根反演)
P5591 小猪佩奇学数学 ∑i=0n(in)×pi×⌊ik⌋⌊ik⌋=i−i%kk1k∑i=0n(in)×pi×(i−i%k)1k∑i=0n(in)×pi×i−1k∑i=0n(in)×pi(imod ...
- 【HNOI2019】白兔之舞【组合数学】【矩阵快速幂】【单位根反演】【Chirp Z-Transform】【原根】【MTT】
题意:有一张 (L+1)×n(L+1)\times n(L+1)×n 个点的有向图,每个结点有二元组 (x,y)(0≤x≤L,1≤y≤n)(x,y)~(0\leq x\leq L,1\leq y\le ...
- 【BZOJ3328】PYXFIB【矩阵快速幂】【单位根反演】【二项式定理】
传送门 题意: ∑i=0⌊nk⌋(nik)Fik\sum_{i=0}^{\lfloor\frac nk\rfloor}\binom n{ik}F_{ik}i=0∑⌊kn⌋(ikn)Fik FF ...
- 【集训队作业2018】复读机【指数型生成函数】【单位根反演】【二项式定理】
传送门 单位根反演听着高级,其实没啥技术含量-- 本文是篇几乎没有证明的佛系讲解 单位根反演的式子长这样: 1n∑i=0n−1ωnik=[k∣n]\frac{1}{n}\sum_{i=0}^{n-1} ...
最新文章
- office在线编辑器
- 微服务实践分享(5)缓存中心
- DL之pix2pix:基于TF利用pix2pix模型对food_resized数据集实现Auto Color自动上色技术—训练测试过程全记录
- mysql-5.7.11-winx64.zip 安装配置
- onlyOfice取消上传文件大小的限制
- mysql sysdate本周_oracle 、mysql 取昨天 前天 本周 数据
- unity 2020 怎么写shader使其接受光照?_用Unity实现半条命Alyx中的液体物理效果
- linux 命令find
- s7300plc串口通信_s7-300串口通讯.ppt
- lammps教程:薄膜渗透过滤模拟(1)
- win10等系统安装Pads安装步骤及软件卡死问题解决
- php网站开题报告该怎么答辩,如何应对开题报告答辩?看完你就明白了
- xp系统从u盘启动计算机,教你怎么用U盘安装Windows XP系统
- OGG FOR BIGDATA 安装(修正)
- The types of the interface org.apache.flink.util.OutputTag could not be inferred.
- 编译天嵌E8内核源码
- docx4j 对比word
- 论文阅读笔记:DOER: Dual Cross-Shared RNN for Aspect Term-Polarity Co-Extraction
- USB HOST芯片SL2.1A调试心得
- 2019智能家居白皮书-从智能单品到全屋智能
热门文章
- 图像处理前沿技术_深入浅出人工智能前沿技术—机器视觉检测,看清人类智慧工业...
- 国家开放大学计算机基础实训项目一,国家开放大学电大专科《微机系统与维护》网络课实训11及实训12作业及答案...
- java取整公式,Java取整函数 四舍五入函数-Go语言中文社区
- linux mysql帮助文档,在 Linux 上安装 MySQL
- [MyBatisPlus]乐观锁和悲观锁
- [Java基础]类加载
- 蓝桥杯2017初赛-9数算式-dfs
- 题目 1885: [蓝桥杯][2017年第八届真题]分巧克力+二分
- Docker中数据管理
- Educational Codeforces Round 90 (Rated for Div. 2)(A, B, C, D, E)