emmm。。。。。。

直接看题解好了:

BZOJ-3157. 国王奇遇记 – Miskcoo's Space

O(m)不懂扔掉

总之,给我们另一个处理复杂求和的方法:

找到函数之间的递推公式!

这里用错位相减,然后想办法转化

由于根据二项式定理,展开之后会出现k^i的乘方,所以展开,有助于变成f(j)递推下去

O(m^2)

#include<bits/stdc++.h>
#define reg register int
#define il inline
#define numb (ch^'0')
using namespace std;
typedef long long ll;
il void rd(int &x){
char ch;x=;bool fl=false;
while(!isdigit(ch=getchar()))(ch=='-')&&(fl=true);
for(x=numb;isdigit(ch=getchar());x=x*+numb);
(fl==true)&&(x=-x);
}
namespace Miracle{
const int N=;
const int mod=1e9+;
ll C[N][N];
int n,m;
ll f[N];
ll qm(ll x,ll y){
ll ret=;
while(y){
if(y&) ret=ret*x%mod;
x=x*x%mod;
y>>=;
}
return ret;
}
int main(){
rd(n);rd(m); if(m==){
ll ans=((ll)n*(n+))%mod*qm(,mod-)%mod;
printf("%lld",ans);
return ;
}
C[][]=;
for(reg i=;i<=m;++i){
C[i][]=;
for(reg j=;j<=m;++j){
C[i][j]=(C[i-][j]+C[i-][j-])%mod;
}
}
f[]=m*(qm(m,n)-+mod)%mod*qm(m-,mod-)%mod;
for(reg i=;i<=m;++i){
for(reg j=;j<=i-;++j){
if((i-j)&){
f[i]=(f[i]-C[i][j]*f[j]%mod+mod)%mod;
}else{
f[i]=(f[i]+C[i][j]*f[j]%mod)%mod;
}
}
f[i]=(f[i]+qm(n,i)*qm(m,n+)%mod)%mod;
f[i]=(f[i]*qm(m-,mod-))%mod;
}
printf("%lld",f[m]);
return ;
} }
signed main(){
Miracle::main();
return ;
} /*
Author: *Miracle*
Date: 2018/12/29 16:48:22
*/

最新文章

  1. HTML5--div、span超出部分省略号显示
  2. 使用noConflict重命名jQuery对象
  3. 接口分离原则(Interface Segregation Principle)
  4. ZOJ 3494 BCD Code(AC自动机+数位DP)
  5. Aspose Cells 添加数据验证(动态下拉列表验证)
  6. 学习java第二天
  7. Sublime Text 安装sftp插件
  8. 谈谈javascript插件的写法
  9. 【Stage3D学习笔记续】山寨Starling(五):纹理计算和尺寸计算
  10. eclipse 中修改 M2_REPO的值--转载
  11. PIL安装记录,编译支持jpeg png
  12. Java---实现运行任意目录下class中加了@MyTest的空参方法(实现图形界面)
  13. GO函数倒叙输出
  14. SVN常用命令积累
  15. List&lt;T&gt;对元素的查找。
  16. combinations(组合)
  17. openlayers4 入门开发系列之地图导航控件篇(附源码下载)
  18. 第一周CTF (合天CTF)
  19. Using MongoDB with Web API and ASP.NET Core
  20. Codeforces Round #540 (Div. 3)--1118B - Tanya and Candies(easy TL!)

热门文章

  1. centos下php环境安装redis
  2. Django模型与创建管理员用户
  3. 【Mybatis】 逆向生成工程
  4. 第一阶段&#183;Linux运维基础-第2章&#183;Linux系统目录结构介绍
  5. List和String数组相互转化
  6. [Clr via C#读书笔记]Cp7常量和字段
  7. 统计学习三:1.k近邻法
  8. 一:HDFS 用户指导
  9. Rightmost Digit(最后一位数字)
  10. Hadoop 版本 生态圈 MapReduce模型