伯努利求幂和模版

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

相关文章

C++必修:模版的入门到实践

✨✨ 欢迎大家来到贝蒂大讲堂✨✨ 🎈🎈养成好习惯,先赞后看哦~🎈🎈 所属专栏:C++学习 贝蒂的主页:Betty’s blog 1. 泛型编程 首先让我们来思考一个问题,如何实现一个交换函数? void swap(int& x, int& y){int tmp = x;x = y;y = tmp;} 相信大家很快就能写出上面这段代码,但是如果要求这个交换函数支持字符型

设计模式学习之模版方法模式

模板方法模式是一种基于继承的代码复用的行为型模式;在其结构中只存在父类与子类之间的继承关系。通过使用模板方法模式,可以将一些复杂流程的实现步骤封装在一系列基本方法中,在抽象父类中提供一个称之为模板方法的方法来定义这些基本方法的执行次序,而通过其子类来覆盖某些步骤,从而使得相同的算法框架可以有不同的执行结果。本篇博客我们一起来学习模版方法模式。 定义与UML图 定义 模板方法模式:定义一个操作

Django 模版转义

1,模版转义的作用 Django模版系统默认会自动转义所有变量。这意味着,如果你在模版中输出一个变量,它的内容会被转义,以防止跨站脚本攻击(XSS)。例如,如果你的变量包含HTML标签,这些标签会被转义,而不是被浏览器解释。 2,添加函数视图 Test/app5/views.py from django.shortcuts import render# Create your view

AI通用写作模版,可以在此基础上进行修改

指令 角色 作者 :你是一位自媒体爆文写作专家,负责撰写文章,具备对特定主题的深入理解和一定的写作技巧。读者 :25-55岁通用人群,对资讯新闻类感兴趣,需要易于理解且富有启发性的内容。 技能 研究能力:对特定主题进行深入研究,收集相关资料,确保内容的准确性和丰富性。写作能力:运用清晰、简洁的语言进行叙述,使文章易于阅读和理解。逻辑组织能力:合理安排文章结构,确保内容条理清晰,逻辑严密。共

AI学习指南机器学习篇-伯努利朴素贝叶斯算法简介

AI学习指南机器学习篇-伯努利朴素贝叶斯算法简介 1. 伯努利朴素贝叶斯算法的原理 1.1 算法的基本思想 伯努利朴素贝叶斯算法是基于贝叶斯定理和特征条件独立假设的分类算法。其基本思想是通过先验概率和类条件概率来计算后验概率,从而实现对样本进行分类。 1.2 分类问题中的应用 伯努利朴素贝叶斯算法在文本分类、垃圾邮件过滤、情感分析等领域有着广泛的应用。在文本分类中,可以通过统计文档中单词

Django 模版变量

1,模版变量作用 模板变量使用“{{ 变量名 }}” 来表示模板变量前后可以有空格,模板变量名称,可以由数字,字母,下划线组成,不能包含空格模板变量还支持列表,字典,对象 2,创建应用 python manage.py startapp app4 2.1 注册应用 Test/Test/settings.py 2.2 添加路由 Test/Test/urls.p

设计模式4-模版方法

设计模式 重构获得模式重构的关键技法1. 静态转动态2. 早绑定转晚绑定3. 继承转组合4. 编译时依赖转运行时依赖5. 紧耦合转松耦合 组件协助动机模式定义结构 要点总结。 例子示例解释: 重构获得模式 设计模式的目的是应对变化,提高复用 设计模式的要点是寻找变化点,然后在变化点处应用设计模式。从而更好地应对需求的变化。什么时候什么地点应用设计模式。比设计模式结构本身更

【C++】函数模版和类模版详解

探索C++中的函数模版和类模版 一、函数模版(Function Templates)二、类模版(Class Templates)三、总结 在C++编程中,模版(Templates)是一种强大的工具,允许程序员编写通用的代码,这些代码可以处理多种数据类型。通过模版,我们可以实现类型安全且高效的代码复用。本文将详细探讨C++中的函数模版和类模版,并通过代码实例来加深理解。

ppt模版免费下载网站大全

PPT是我们传达信息、分享知识、展示项目和进行商务沟通的重要工具。一个设计精美、布局合理的PPT不仅能吸引观众的注意力,还能有效提升演讲者的专业形象。PPT模版可以帮助我们高效制作出精美的PPT,下面小编就来和大家分享一些免费无需注册登录就可以直接下载的PPT模版网站。 1.PPT超级市场 PPT超级市场是一个集合了海量PPT模板的在线平台,用户可以在这里找到各种风格、各种用途的模板,从商

js脚本 常见模版

常见js hook脚本 常见js hook脚本_js hook debugger-CSDN博客 js一键Hook加密算法 js一键Hook加密算法-CSDN博客