luoguP4705 玩游戏
好好玩

即对于k∈[1,t] 求(ax+by)^k
以下图片均来自于:
一

二项式展开:

设:

那么:

可以卷积了
二
求:

(PS:随机序列的0~k次方和,这是一个经典问题。)
我的思路:O(nk)暴力
神仙思路:求一个毫不沾边的东西,然后写两次,对应上系数。O(nlog^2n)
不妨考虑求A(x):
先求一个看起来毫不沾边的东西:


这个G成为了写两次的东西
解决问题的中轴和杠杆
利用
分治NTT+求Ln
现在已经写了一次
写第二次:


对于单独一项,采用Taylor展开,往多项式方向靠近

合起来:
交换顺序:

哇!
写第二次,
用Taylor展开+交换求和号
对应系数直接相等
神仙神仙~!~~~!!~!
Code
多项式全家桶
const int N=1e5+;
int n,m,K;
int a[N],b[N];
int A[N],B[N];
int c[N];
int jie[N],inv[N];
il Poly divi(int l,int r){
if(l==r){
Poly g;g.resize();g[]=;g[]=c[l];return g;
}
int mid=(l+r)>>;
Poly L=divi(l,mid),R=divi(mid+,r);
return L*R;
}
void wrk(int *a,int *A,int n){
for(reg i=;i<=n;++i) c[i]=a[i];
Poly G=divi(,n);
// G.out();
G.resize(K+);
G=Ln(G);
G.resize(K+);
// G.out();
for(reg k=;k<=K;++k){
if((k+)&){
A[k]=mod-mul(G[k],k);
}else{
A[k]=mul(G[k],k);
}
}
}
int main(){
rd(n);rd(m);
for(reg i=;i<=n;++i){
rd(a[i]);
}
for(reg i=;i<=m;++i){
rd(b[i]);
}
rd(K);
wrk(a,A,n);
wrk(b,B,m);
A[]=n;
B[]=m;
// prt(A,0,K);
// prt(B,0,K); Poly f,g;
f.resize(K+);g.resize(K+);
jie[]=;
for(reg i=;i<=K;++i) jie[i]=(ll)jie[i-]*i%mod;
inv[K]=qm(jie[K],mod-);
for(reg i=K-;i>=;--i) inv[i]=mul(inv[i+],i+); for(reg i=;i<=K;++i){
f[i]=mul(A[i],inv[i]);
g[i]=mul(B[i],inv[i]);
}
f=f*g;
for(reg i=;i<=K;++i){
ll ans=mul(jie[i],f[i]);
ans=mul(ans,qm(mul(n,m),mod-));
printf("%lld\n",ans);
}
return ;
}
luoguP4705 玩游戏的更多相关文章
- luoguP4705 玩游戏 分治FFT
\[ \begin{aligned} Ans(k) &= \sum \limits_{i = 1}^n \sum \limits_{j = 1}^m \sum \limits_{t = 0}^ ...
- 原生JS实战:写了个一边玩游戏,一边记JS的API的游戏
本文是苏福的原创文章,转载请注明出处:苏福CNblog:http://www.cnblogs.com/susufufu/p/5878913.html 本程序[一边玩游戏,一边记JS的API]是本人的个 ...
- bzoj4730: Alice和Bob又在玩游戏
Description Alice和Bob在玩游戏.有n个节点,m条边(0<=m<=n-1),构成若干棵有根树,每棵树的根节点是该连通块内编号最 小的点.Alice和Bob轮流操作,每回合 ...
- 小易邀请你玩一个数字游戏,小易给你一系列的整数。你们俩使用这些整数玩游戏。每次小易会任意说一个数字出来,然后你需要从这一系列数字中选取一部分出来让它们的和等于小易所说的数字。 例如: 如果{2,1,2,7}是你有的一系列数,小易说的数字是11.你可以得到方案2+2+7 = 11.如果顽皮的小易想坑你,他说的数字是6,那么你没有办法拼凑出和为6 现在小易给你n个数,让你找出无法从n个数中选取部分求和
小易邀请你玩一个数字游戏,小易给你一系列的整数.你们俩使用这些整数玩游戏.每次小易会任意说一个数字出来,然后你需要从这一系列数字中选取一部分出来让它们的和等于小易所说的数字. 例如: 如果{2,1,2 ...
- cdoj 1136 邱老师玩游戏 树形背包
邱老师玩游戏 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/problem/show/1136 Desc ...
- win7系统玩游戏不能全屏的解决办法
1.修改注册表中的显示器的参数设置 Win键+R键,打开运行窗口,输入regedit回车,这样就打开了注册表编辑器,然后,定位到以下位置: HKEY_LOCAL_MACHINE\SYSTEM\ ...
- 【用PS3手柄在安卓设备上玩游戏系列】连接手柄和设备
背景 硬件要求1:PS3 手柄 + 手柄配套的USB线 硬件要求2:已经获得 ROOT 权限并且支持蓝牙的安卓设备 软件要求1:Sixaxis Compatibility Checker PS3 手柄 ...
- UESTC_邱老师玩游戏 2015 UESTC Training for Dynamic Programming<Problem G>
G - 邱老师玩游戏 Time Limit: 3000/1000MS (Java/Others) Memory Limit: 65535/65535KB (Java/Others) Submi ...
- 【特殊的图+DP】【11月校赛】大家一起玩游戏
大家一起玩游戏 Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total Submi ...
随机推荐
- 2019Java查漏补缺(三)
1.为什么这个public的类的类名必须和文件名相同 是为了方便虚拟机在相应的路径中找到相应的类所对应的字节码文件 2.java8 的一些新特性: 3: 数据库隔离级别 隔离级别 ...
- MUI 实用教程
MUI 实用JS教程: https://www.kancloud.cn/benhailong/mui/319751 MUI 实用教程: https://www.kancloud.cn/benhail ...
- C#基础学习第一天
..net与C# .NET是一个框架.一种平台.一种技术 C#是一种编程语言,可以开发基于.NET平台的应用 .NET能干什么 Winform ASP.NET Wwb wphone Unity3D游戏 ...
- Github上html页面(包括CSS样式和JS效果)如何显示出来
在看Github上项目时,发现有的html页面效果能很好的展现出来,而有的则不能.对这个问题很好奇,因此研究了一下,最终做到了将页面展示出来的目的.下面以我的Github的开源项目bootstrap- ...
- 能ping通虚拟机,但snmp报文 Destination unreachable(Host administratively prohibited
如题目,使用virtual box 虚拟机,虚拟机系统为centos6.5, 主机系统为win10 内外设置ip在同一网段后,互相能ping通,centos 系统开启snmp服务,此处说明以下, sn ...
- apache https配置【转】
博文来源:apache https配置 参考博文:apache.nginx配置自签名证书 1. 确认是否安装ssl模块 是否有mod_ssl.so文件 2. 生成证书和密钥 linux下 步骤1: ...
- SQLServer之删除约束
使用SSMS数据库管理工具删除约束 1.连接数据库,选择数据表->展开键或者约束->选择要删除的约束->右键点击->选择删除. 2.在删除对象弹出框中->点击确定. 3. ...
- 虚拟机配置Linux上网环境
概要:在虚拟机安装CentOS6.5的环境后,配置NAT模式,修改系统文件支持上网. (1)ip地址的配置,IP地址的子网掩码为255.255.255.0. (2)网关的指定,也就是默认路由,当我们需 ...
- 模块简介:(random)(xml,json,pickle,shelve)(time,datetime)(os,sys)(shutil)(pyYamal,configparser)(hashlib)
Random模块: #!/usr/bin/env python #_*_encoding: utf-8_*_ import random print (random.random()) #0.6445 ...
- 【English】20190416
anti-money laundering反洗钱[ˈænti][ˈlɔːndərɪŋ] misconduct不当行为[ˌmɪsˈkɑːndʌkt] Currently, she is focus ...