LOJ 6485 LJJ学多项式
前言
蒟蒻代码惨遭卡常,根本跑不过
前置芝士——单位根反演
单位根有这样的性质:
\[ \frac{1}{n}\sum_{i=0}^{n-1}\omega_{n}^{ki}=\left[n|k\right] \]
所以可以得出单位根反演的式子
如果有\(f(x)=\sum_{i=0}a_ix^i\),就可以推出
\[ \sum_{i=0}^na_i\left[d|i\right]=\frac{1}{d}\sum_{p=0}^{d-1}f(\omega_d^p) \]
证明可以把上面的式子代入,然后交换和号
思路
这道题要求的东西是这样的
\[ \sum_{i=0}^3a_i\sum_{j=0}^n\left(\begin{matrix}n\\j\end{matrix}\right)s^j\left[j\%4=i\right] \]
写出\(\sum_{j=0}^n\left(\begin{matrix}n\\j\end{matrix}\right)s^j\)的生成函数,由二项式定理得到是\((sx+1)^n\)
不妨设i=0
则要求
\[ \sum_{j=0}^n\left(\begin{matrix}n\\j\end{matrix}\right)s^j\left[4|j\right] \]
直接套公式
原式等于
\[ \frac{1}{4}\sum_{p=0}^3f(\omega_4^p) \]
对于i等于1,2,3,相当于原式向右边“移动”了1,2,3个位置
乘以自变量的对应倍即可
代码
蒟蒻的代码不知道为什么跑的辣么慢,只有60pts
#include <cstdio>
#include <algorithm>
#include <cstring>
#define int long long
using namespace std;
int T,a[4],s,n,MOD=998244353,W[5]={1,911660635,998244352,86583718},inv=748683265;
int pow(int a,int b){int ans=1;while(b){if(b&1)ans=(ans*a)%MOD;a=(a*a)%MOD;b>>=1;}return ans;
}
signed main(){scanf("%lld",&T);while(T--){scanf("%lld %lld %lld %lld %lld %lld",&n,&s,&a[0],&a[1],&a[2],&a[3]);int ans=0;for(int i=0;i<4;i++){int mid=0;for(int j=0;j<4;j++)mid=(mid+pow((s*W[j]%MOD+1%MOD)%MOD,n)*pow(W[i*j%4],MOD-2)%MOD)%MOD;ans=(ans+a[i]*mid%MOD*inv%MOD)%MOD;}printf("%lld\n",ans); }return 0;
}
转载于:https://www.cnblogs.com/dreagonm/p/10447974.html
LOJ 6485 LJJ学多项式相关推荐
- Loj 6485. LJJ 学二项式定理
Loj 6485. LJJ 学二项式定理 题目描述 LJJ 学完了二项式定理,发现这太简单了,于是他将二项式定理等号右边的式子修改了一下,代入了一定的值,并算出了答案. 但人口算毕竟会失误,他请来了你 ...
- Loj#6485. LJJ 学二项式定理
Loj#6485. LJJ 学二项式定理(单位根反演) 题目描述 题目描述 题意:求下面式子的答案QAQ. [∑((ni)⋅si⋅aimod4)]mod998244353[\sum(\tbinom{n ...
- [LOJ 6485]LJJ 学二项式定理
[LOJ 6485] LJJ 学二项式定理 题意 给定 \(n,s,a_0,a_1,a_2,a_3\), 求: \[ \Large \left[ \sum_{i=0}^n \left( {n\choo ...
- 【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 ...
- LJJ 学二项式定理
题目: https://loj.ac/problem/6485 给定n,s,a0,a1,a2,a3n,s,a_0,a_1,a_2,a_3n,s,a0,a1,a2,a3,求 [∑i=0n(ni) ...
- 单位根反演[loj6485]LJJ 学二项式定理
前言 之前写反演的博客对于单位根反演只提了FFT 这里补一下一个应用 单位根反演 fi=∑j=0n−1ωni∗jgj⇔gi=∑j=0n−1ωn−i∗jnfjf_i=\sum_{j=0}^{n-1}\o ...
- 「学习笔记」多项式相关
序 学多项式也有好久了,可是我自己还没怎么认认真真推过柿子,导致啥都不会,然后被吊打. 看来再不回顾一下就不行了啊. 多项式乘法 写了一个好看一点的\(\mathrm{NTT}\)板子,仅供参考. i ...
- 【知识总结】多项式全家桶(一)(NTT、加减乘除和求逆)
我这种数学一窍不通的菜鸡终于开始学多项式全家桶了-- 必须要会的前置技能:FFT(不会?戳我:[知识总结]快速傅里叶变换(FFT)) 以下无特殊说明的情况下,多项式的长度指多项式最高次项的次数加\(1 ...
- GOOD BYE OI
大米饼正式退役了,OI给我带来很多东西 我会的数学知识基本都在下面了 博客园的评论区问题如果我看到了应该是会尽力回答的... 这也是我作为一个OIer最后一次讲课的讲稿 20190731 多项式乘法 ...
最新文章
- 07.LoT.UI 前后台通用框架分解系列之——强大的文本编辑器
- 2020牛客多校第3场:[Points Construction Problem + 思维题+构造]
- 现在无法停止通用卷设备_软化和柔顺有什么区别吗?头发粗硬适合拉直还是烫卷?...
- HTML/CSS快速入门
- 50个Android开发人员必备UI效果源码[转载]
- 第二节 MATLAB中图像数据导入、导出和转换
- 如何做web程序权限管理
- cvFilter2D() 卷积初步了解
- cadence 怎么拼版_ALLEGRO 拼版教程
- Win10纯净版和官方原版哪个好?
- Python整理PEER所下载的地震波源数据——提取地震波至txt+生成地震波反应谱
- 桌面在计算机哪个文件,计算机中win7系统桌面文件在c盘哪个文件夹
- FC经典游戏600合集for mac(小霸王游戏) 中文版
- p-mos,n-mos的导通条件
- MySQL数据库中主键和候选键的区别?
- Word文档的使用技巧
- linux怎么查看root权限,linux 查看当前用户是否有root权限490
- android权限的最佳运用
- html5语音听写流式,iOS 讯飞语音听写(流式版)
- wow达拉然发礼物机器人_达拉然彩蛋:会把玩家变羊的NPC,并赠送礼物
热门文章
- 博士复试复旦计算机,我考上复旦大学博士之路 复旦考博复试通过记
- 用c语言写一个唐诗的程序,文言文编程95后又出新作,在287051行古诗中找出了“唐诗幻方”!...
- 【程序源代码】表白墙源码
- 三维计算机动画,三维计算机动画的设计
- 有史以来最全的CMD命令
- springboot 简单的扫码登录 demo
- SRE重案调查组 第二集 | 挖掘应用处理变慢的“真相”
- mos管结电容等效模型_深入理解电容器的等效串联电阻(ESR)
- 1.通过PADS Logic创建原件类型和逻辑封装
- yara 模式匹配 android,恶意软件模式匹配利器 – YARA