Loading [MathJax]/jax/element/mml/optable/MathOperators.js

n^2求ln,exp

inline void ln(int *f,int *g,int n){
	g[0]=0;
	for(int i=1;i<n;++i)
	{
		g[i]=0;
		for(int j=1;j<i;++j)g[i]=(g[i]+1ll*f[i-j]*g[j]%P*j)%P;
		g[i]=(f[i]+1ll*g[i]*(P-inv[i]))%P;
	}
}
inline void exp(int *f,int *g,int n){
	g[0]=1;
	for(int i=1;i<n;++i){
		g[i]=0;
		for(int j=1;j<=i;++j)g[i]=(g[i]+1ll*g[i-j]*f[j]%P*j)%P;
		g[i]=(1ll*g[i]*inv[i])%P;
	}
}
posted @ 2020-10-24 16:01  Adscn  阅读(262)  评论(0)    收藏  举报
编辑推荐:
· 一个 java 空指针异常的解决过程
· 揭开 SQL Server 和 PostgreSQL 填充因子的神秘面纱
· 没有调度器的协程不是好协程,零基础深入浅出 C++20 协程
· 别做抢活的导演:代码中的抽象层次原则
· 从 Redis 客户端超时到 .NET 线程池挑战
阅读排行:
· dotnetty 内存泄漏的BUG修复了
· 20250709 - GMX V1 攻击事件: 重入漏洞导致的总体仓位价值操纵
· Apipost 的AI功能真的还不错啊!建议后端开发和测试人员了解
· 面试官:如何实现大模型连续对话?
· MoneyPrinterTurbo – 免费开源的AI短视频生成工具
点击右上角即可分享
微信分享提示