个人整理方幂和公式(∑i^k 公式)
有个Oier小学妹问了我一个Σi^k,i<=1e8 ,k<=1e6的问题,我认为这个用伯努利数列可能可以解决他的问题,所以整理了以下文章,给学弟学习学习~~~本人水平有限,也只能帮到这里了吧QAQ~~~
下面进入正文:
计算∑{i=1,n}i^k 的值需要引入伯努利数列的概念
定义将(B-1)^k展开,然后将B^k写成数列的第k项,即B(k)
当k>=2时,令(B-1)^k展开后的形式(将B^k写成B(k))与B(k)相等
(便于记忆相当于,令(B-1)^k=B^k,然后将B^k写成B(k)求出各个项的值)
即可得出伯努利数列(即伯努利数)
例如
计算B(1)
令(B-1)^2=B^2
B^2-2B+1=B^2
将B^k写成数列的第k项,即B(k)
有B(2)-2B(1)+1=B(2)
则B(1)=0.5
同理,若计算B(2)
令(B-1)^3=B^3
有
B^3-3B^2+3B-1=B^3
将B^k写成数列的第k项
有
B(3)-3B(2)+3B(1)-1=B(3)
B(2)=[3B(1)-1]/3
即
B(2)=1/6
由此可算出数列的任意一项
定义B(0)=1
由上面所述:
(x+B)^(k+1)
=∑{i=0, k+1}C{i,k+1}B^i*x^(k+1-i)
=x^(k+1)+C{1,k+1}Bx^k+∑{i=2,k+1}C{i,k+1}*B^i*x^(k+1-i)
=x^(k+1)+0.5C{1,k+1}x^k+∑{i=2,k+1}C{i,k+1}*B^i*x^(k+1-i)
又
(x+B-1)^(k+1)
=∑{i=0, k+1}C{i,k+1}(B-1)^i*x^(k+1-i)
=x^(k+1)+C{1,k+1}(B-1)x^k+∑{i=2,k+1}C{i,k+1}*(B-1)^i*x^(k+1-i)
=x^(k+1)-0.5C{1,k+1}x^k+∑{i=2,k+1}C{i,k+1}*(B-1)^i*x^(k+1-i)
因为B(k)是伯努利数列
有
(B-1)^i=B^i
即
(x+B-1)^(k+1)
=x^(k+1)-0.5C{1,k+1}x^k+∑{i=2,k+1}C{i,k+1}*B^i*x^(k+1-i)
所以
(x+B)^(k+1)-(x+B-1)^(k+1)=(k+1)x^k
令x=1,2,3,…,i,…,n
有
(1+B)^(k+1)-B^(k+1)=(k+1)
(2+B)^(k+1)-(1+B)^(k+1)=(k+1)*2^k
(3+B)^(k+1)-(2+B)^(k+1)=(k+1)*3^k
……
(i+B)^(k+1)-(i-1+B)^(k+1)=(k+1)*i^k
……
(n+B)^(k+1)-(n-1+B)^(k+1)=(k+1)*n^k
由上式求和,得:
(n+B)^(k+1)-B^(k+1)=(k+1)∑{i=1,n}i^k
即
∑{i=1,n}i^k=[(n+B)^(k+1)-B^(k+1)]/(k+1)
注意:
这里的(n+B)^(k+1)并不代表(n+B)的k+1次幂
而是指的展开后将B^k写成伯努利数列的第k项
就像前面说的一样。想要严密的算法,就是欧拉
的算法,涉及到无穷级数,比较麻烦但非常严密。
本文所用的符号:
数列求和a(1)+a(2)+a(3)+…+a(n)表示为
∑{i=1,n}a(n)
从n个数中选出m个的组合数为
C{m,n}
以下是用Word整理的文本,我也不知道为啥有时候公式贴上来是错误的,所以怕看不清什么的,截个图存一下,也方便自己查询学习~
下面的图片是数学家欧拉考虑到无穷级数的比较严密的算法:
个人整理方幂和公式(∑i^k 公式)的更多相关文章
- EXCEL 如何实现下拉填充公式,保持公式部分内容不变,使用绝对引用
EXCEL 如何实现下拉填充公式,保持公式部分内容不变,使用绝对引用 在不想变的单元格前加$符号(列标和列数,两个都要加$),变成绝对引用,默认情况是相对引用 L4固定不变的方式:$L$4 M4固定不 ...
- latex:在公式之中和公式之间插入说明文字和标点符号
在公式之中和公式之间插入说明文字和标点符号,主要使用 \intertext{文本} \shortintertext{文本} \text{文本} 这三个命令 代码: \begin{align*}x^{2 ...
- HDU 3221 矩阵快速幂+欧拉函数+降幂公式降幂
装载自:http://www.cnblogs.com/183zyz/archive/2012/05/11/2495401.html 题目让求一个函数调用了多少次.公式比较好推.f[n] = f[n-1 ...
- POJ-1845 Sumdiv---因子和(快速幂+快速加法+因子和公式)
题目链接: https://cn.vjudge.net/problem/POJ-1845 题目大意: 求AB的因子和 解题思路: 先将A质因数分解,然后B次方的质因数指数就是乘上B即可 这里要mod9 ...
- 51Nod 1013 3的幂的和 快速幂 | 乘法逆元 | 递归求和公式
1.乘法逆元 直接使用等比数列求和公式,注意使用乘法逆元 ---严谨,失细节毁所有 #include "bits/stdc++.h" using namespace std; #d ...
- HDU_2604 矩阵快速幂 较难推的公式
一个排队问题,f代表女,m代表男,f和m出现的几率相等.问一个长为L的队伍不能出现 fmf 和 fff这样的串总共有多少种. 这个题目的公式递推略难啊...我看了别人博客才想明白原来是这么递推出来的. ...
- POI单元格添加公式以及读取公式结果的值
POI提供了为单元格添加条件样式的方法,但是我并没有找到获取单元格改变后样式的方法,获取到样式依旧是没有改变之前的. 比如为单元格添加条件样式用于监听单元格值是否被修改,如果单元格值被修改那么字体颜色 ...
- latex之行内公式与行间公式
1.行内公式 我是对行内公式的测试$f(x)=1+x+x^2$ 2.行间公式 单行不编号 \begin{equation} \int_0^1(1+x)dx \end{equation} 结果为: 单行 ...
- Word中MathType公式与LaTeX公式的转换
1. 对Word文档中用MathType输入的公式,在word中,选中mathtype公式,按住“Alt+\”键,可以将MathType公式转换成Latex格式. 2. 同样,将Latex格式的公式代 ...
随机推荐
- animate.css+wow.js页面滚动即时显示动画
1.地址引入 <link href="css/animate.min.css" rel="stylesheet" type="text/css& ...
- 事务处理操作(COMMIT,ROLLBACK)。复制表。更新操作UPDATE实际工作中一般都会有WHERE子句,否则更新全表会影响系统性能引发死机。
更新操作时两个会话(session)同时操作同一条记录时如果没有事务处理操作(COMMIT,ROLLBACK)则会导致死锁. 复制表:此方法Oracle特有
- iOS 让CoreData更简单些
原文:http://www.cocoachina.com/ios/20170421/19096.html 前言 本文并不是CoreData从入门到精通之类的教程, 并不会涉及到过多的原理概念描述, 而 ...
- [array] leetcode - 54. Spiral Matrix - Medium
leetcode-54. Spiral Matrix - Medium descrition GGiven a matrix of m x n elements (m rows, n columns) ...
- 【Zookeeper】源码分析目录
Zookeeper源码分析目录如下 1. [Zookeeper]源码分析之序列化 2. [Zookeeper]源码分析之持久化(一)之FileTxnLog 3. [Zookeeper]源码分析之持久化 ...
- Linux 学习记录 五(软件的安装升级).
一.gcc gcc是Linux上面最标准的C语言的编译程序,用来源代码的编译链接. gcc -c hello.c 编译产生目标文件hello.o gcc -O hello.c 编译产生目标文件,并进行 ...
- JS画几何图形之六【过直线外一点作垂线】
样例:http://www.zhaojz.com.cn/demo/draw10.html 依赖:[点].[直线] //过直线外一点画垂线 function drawVerticalLine(point ...
- Clonezilla SE---克隆linux------转载
引入: 本博文将会是<学生机房中的虚拟化>专题中的核心内容.因为,通过本篇博文的讲述,大家可以看到用于网络化批量部署Linux系统的Clonezilla SE搭建的全过程.注意,几乎所有命 ...
- 【转】java jvm 线程 与操作系统线程
原文链接:http://segmentfault.com/q/1010000000370403 Java的目标是要跨平台,而不同的操作系统(如类Unix和Windows)其任务调度机制有很大的不同,故 ...
- jsp 之 解决mysql不是内部或外部命令问题
安装Mysql后,当我们在cmd中敲入mysql时会出现'Mysql'不是内部或外部命令,也不是可运行的程序或其处理文件. 打开我的电脑在我的电脑右键中选择属性,然后单击选择高级系统设置. 在系统属性 ...