伯努利求幂和模版

2023-10-23 15:33
文章标签 模版 伯努利

本文主要是介绍伯努利求幂和模版,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

第二伯努利数 ni=1ik=(n+B+)k+1(B+)k+1k+1 ∑ i = 1 n i k = ( n + B + ) k + 1 − ( B + ) k + 1 k + 1
第一伯努利数 ni=1ik=1k+1ki=0(1)i(k+1i)Bink+1i ∑ i = 1 n i k = 1 k + 1 ∑ i = 0 k ( − 1 ) i ( k + 1 i ) B i − n k + 1 − i
这里模版求的是 B B −
模版借鉴 acdreamers 的博客
代码如下:

const ll mod = 1e9+7;
const int N = 1010;ll C[N][N];
ll B[N],Inv[N];
ll Tmp[N];
ll n;
ll pre[N];void Init()
{//预处理组合数for(int i=0; i<N; i++){C[i][0] = C[i][i] = 1;if(i == 0) continue;for(int j=1; j<i; j++)C[i][j] = (C[i-1][j] % mod + C[i-1][j-1] % mod) % mod;}//预处理逆元Inv[1] = 1;for(int i=2; i<N; i++)Inv[i] = (mod - mod / i) * Inv[mod % i] % mod;//预处理伯努利数B[0] = 1;for(int i=1; i<N; i++){ll ans = 0;if(i == N - 1) break;for(int j=0; j<i; j++){ans += C[i+1][j] * B[j];ans %= mod;}ans *= -Inv[i+1];ans = (ans % mod + mod) % mod;B[i] = ans;}
}ll Work(int k)  //求k次幂的和
{ll ans = Inv[k+1];ll sum = 0;for(int i=0; i<=k; i++){if(i&1)sum=(sum-C[k+1][i] * Tmp[k+1-i] % mod * B[i] % mod+mod)%mod;elsesum += C[k+1][i] * Tmp[k+1-i] % mod * B[i] % mod;sum %= mod;}ans *= sum;ans %= mod;return ans;
}

这篇关于伯努利求幂和模版的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/268754

相关文章

模版方法模式template method

学习笔记,原文链接 https://refactoringguru.cn/design-patterns/template-method 超类中定义了一个算法的框架, 允许子类在不修改结构的情况下重写算法的特定步骤。 上层接口有默认实现的方法和子类需要自己实现的方法

FHQ Treap模版(luogu P3369)

FHQ Treap模版(自用),带注释 #include<bits/stdc++.h>using namespace std;const int N=1e5+10;int n,root,idx;struct node{int l,r;int val,key,size;}tr[N];int getnew(int v){tr[++idx].val=v;//权值tr[idx].key=rand(

机器学习:opencv图像识别--模版匹配

目录 一、模版匹配的核心概念 1.图片模板匹配是一种用于在图像中查找特定模式或对象的技术。 2.模板图像 3.目标图像 4.滑动窗口 5.相似度度量 6.匹配位置 二、模版匹配的步骤 1.准备图像: 2.预处理: 3.匹配: 4.定位最佳匹配: 5.标记结果: 6.显示或处理结果: 三、代码实现 一、模版匹配的核心概念 1.图片模板匹配是一种用于在图像中查

推荐适合中秋的SVG模版(第III期)

宝藏模版 往期推荐(点击阅读): 趣味效果|高大上|可爱风|年终总结I|年终总结II|循环特效|情人节I|情人节II|妇女节|儿童节I|儿童节II|儿童节III|618I|618II|父亲节|丝滑动画|端午节I|端午节II|滑动妙用|图片轮播I|图片轮播II|又红又专|中秋节I|中秋节II|双十一I|双十一II|世界杯|圣诞节|新年|兔年春节|元宵节|愚人节|杂志范儿|520/521I|520

HTB-bike(SSTI模版注入)

前言 大家好,我是qmx_07,今天给大家讲解bike靶场 渗透过程 信息搜集 服务器开放了 22 ssh 和 http80端口 Wappalyzer 介绍:Wappalyzer是一种浏览器扩展程序,用于识别正在访问的网站所使用的技术栈和工具,比如使用的web框架,编程语言等 服务器所使用Express框架 发现SSTI模版注入 可以看到这个输入框,用来输出 内容尝试x

Idea中修改Jsp文件的头部注释模版

文章目录 方法1,启动idea,单击“file”,选择“settings”2,选择Editor——File and Code Templates——other——Jsp files——jsp File.jsp。此时编辑如下图所示的右上区域即可修改模板。 每天学一个小技巧 方法 1,启动idea,单击“file”,选择“settings” 2,选择Editor

模版匹配——在大量的图片中找到与模版相似的图像

传统的特征匹配算法: 通过opencv自带的matchtemplate方法识别发现对形变、旋转的效果不是很好,后来尝试利用orb特征、sift特征匹配,由于车辆很多特征很相似,也不能很好的区分,如利用sift特征匹配效果如下: 代码: import shutilimport cv2import numpy as npimport osdef calculate_match_score(

CString、String(标准模版…

原文地址:CString、String(标准模版库)、string(C语言)区别和联系----1---5 作者:蓝色的思念 STring与CSTring的区别和联系 CString:MFC里面封装的类。主要应用在MFC和ATL程中          主要数据类型有char(应用于ANSI),wchar_t(unicode),TCHAR(ANSI与unicode均可);

策略模式+模版方法模式+简单工厂模式混用优化代码复杂分支问题

说明 这篇博客是在复杂场景使用策略和工厂模式代替分支语句升级版,增加了模版方法模式。将支付类的公共逻辑抽取到模板类中,使整个支付逻辑更加灵活,进一步优化了代码结构,提升了软件的可维护性和可读性。 流程图如下 先看一遍流程再对一下代码就能很深刻理解了。 代码具体改造 1、首先新增模版方法 public abstract class AbstractPaymentStrategy i

【C++标准模版库】模拟实现容器适配器:stack、queue、priority_queue(优先级队列)

stack和queue 一.容器适配器1.什么是适配器 二.模拟实现stack和queue三.STL标准库中stack和queue的底层结构四.deque(双端队列)的简单介绍五.deque作为stack和queue的默认容器的原因六.priority_queue(优先级队列)的介绍和使用七.priority_queue的模拟实现1.前置:仿函数的介绍2.模拟实现3.关于堆的算法 八.栈和队