用积分方法求K次方和数列公式
这是我很早以前在高中时发现的一个通用计算K次方和数列公式的方法,很特别的地方是用了微积分中的积分方法。目前我还没有发现有谁提出和我一样的方法,如果哪位读者有相关发现,麻烦告知我。
大家很多人都知道高斯小时候的故事。故事说的是大约在十岁时,老师在算数课上出了一道难题:「把 1到 100的整数写下来,然后把它们加起来!」高斯的计算方法是:1+100=101,2+99=101,3+98=101,……,49+52=101,50+51=101,一共有50对和为 101的数目,所以答案是 50×101=5050。
这是数列求和,我们在高中时都学过,用数学式表达就是

然而这个方法用到平方和数列就不行了,用归纳法也很难做出来,而且不通用。

在这里,我介绍一下我自己发现的的一个通用方法,用简单的积分公式可以一级一级很简单的算出K次方和数列的公式。
前后幂和公式关系
K是大于等于0的整数,K次方和数列的公式和(K+1)次方和数列的公式有如下关系
1.前后幂次和公式的关系

C是待定常数。
2.当n为1的 时候,和总是为1

3. 各项表达式都没有常数
的各项表达式都没有常数。
知道了这三个关系,我们就能从0次方和一直算到k次方数列和。
一、0次方数列和
因为每个数的0次方都等于1,所以

这不需要用到其它算法就可以很简单的得出这一结论。
二、1次方数列和
1次方和数列就是高斯遇到的那个问题,结果就是

在这里,用我的方法就繁琐一些,要把上面0次方和的公式代入到这一步。

当n=1时

所以

最后,1次方和数列的公式是

三、2次方和数列
2次方和数列的表达式如下,有人用数学归纳法得出这一公式,但是我觉得难度比较大。

用我的方法按照上面的步骤大致重复一下,可以很快得出答案。

当n=1时

所以

所以平方和数列公式是

四、3次方和数列
3次方和数列的公式是

我们把2次方和的公式代入到这里,用同样步骤可以得出一样的结果。

当n=1时

所以

三次方和数列的公式是

五、4次方和数列
4次方和数列的公式是

目前我还没有找到别人给出的这个公式的证明方法,找出这一个公式他应该比较困难。
我们还是用我们的方法计算。

当n=1时

所以

所以四次方和数列公式是

可以看出,我的方法是简单的、通用的,只用简单的积分公式就快速计算出K次方和数列公式。
用积分方法求K次方和数列公式的更多相关文章
- hdu6607 min25筛+杜教筛+伯努利数求k次方前缀和
推导过程类似https://www.cnblogs.com/acjiumeng/p/9742073.html 前面部分min25筛,后面部分杜教筛,预处理min25筛需要伯努利数 //#pragma ...
- 【编程题目】题目:定义 Fibonacci 数列 输入 n,用最快的方法求该数列的第 n 项。
第 19 题(数组.递归):题目:定义 Fibonacci 数列如下:/ 0 n=0f(n)= 1 n=1/ f(n-1)+f(n-2) n=2输入 n,用最快的方法求该数列的第 n 项. 思路:递归 ...
- 【严蔚敏】【数据结构题集(C语言版)】1.17 求k阶斐波那契序列的第m项值的函数算法
已知k阶斐波那契序列的定义为 f(0)=0,f(1)=0,...f(k-2)=0,f(k-1)=1; f(n)=f(n-1)+f(n-2)+...+f(n-k),n=k,k+1,... 试编写求k阶斐 ...
- Vijos lxhgww的奇思妙想--求K级祖先
给出一棵树求K级祖先.O(N*logN+Q) 更详细的讲解见:https://www.cnblogs.com/cjyyb/p/9479258.html /* 要求k级祖先,我们可以把k拆成" ...
- poj3660 Cow Contest(Floyd-Warshall方法求有向图的传递闭包)
poj3660 题意: 有n头牛, 给你m对关系(a, b)表示牛a能打败牛b, 求在给出的这些关系下, 能确定多少牛的排名. 分析: 在这呢先说一下关系闭包: 关系闭包有三种: 自反闭包(r), 对 ...
- 傻瓜方法求集合的全部子集问题(java版)
给定随意长度的一个集合.用一个数组表示,如{"a", "b","c"},求它的全部子集.结果是{ {a}, {b}, {c}, {a,b}, ...
- ACM1229_还是A+B(求A的第K位的数公式:A%((int)(pow(10,K)))
#include<stdio.h> #include<math.h> int main() { int A,k,B,sum,c,d; while(scanf("%d% ...
- 有两个序列A和B,A=(a1,a2,...,ak),B=(b1,b2,...,bk),A和B都按升序排列。对于1<=i,j<=k,求k个最小的(ai+bj)。要求算法尽量高效。
有两个序列A和B,A=(a1,a2,...,ak),B=(b1,b2,...,bk),A和B都按升序排列.对于1<=i,j<=k,求k个最小的(ai+bj).要求算法尽量高效. int * ...
- 给定一个正整数,实现一个方法求出离该整数最近的大于自身的 换位数 <把一个整数各个数位进行全排列>
"""给定一个正整数,实现一个方法求出离该整数最近的大于自身的 换位数 -> 把一个整数各个数位进行全排列""" # 使用 permu ...
随机推荐
- Getting started with the basics of programming exercises_1
1.编写一个将输入复制到输出的程序,并将其中连续的多个空格用一个空格代替 使用if 结构: #include<stdio.h> #define NONBLANK 'a'; // repal ...
- Tenka1 Programmer Beginner Contest D IntegerotS(补)
当时没做出来,官方题解没看懂,就看别人提交的代码,刚对着别人代码调了几组数据,才发现,思路差不多,不过,原来是这样实现啊,果然我还是很菜 思路:题目要求是选取的这些数字全部进行OR运算,结果<= ...
- 限制允许某些IP访问服务器
买了台阿里云服务器,部署了一些东西在上面,但是最近老是发现有异常登录,而且不仅仅是登录就完事了,还把服务器上一些重要的项目数据文件都给删除了,由于本人不是专业的运维人员,单位也没有运维人员,百度了一下 ...
- linux设备编号的内部表示
在内核中, dev_t 类型(在 <linux/types.h>中定义)用来持有设备编号 -- 主次部分都包 括. 对于 2.6.0 内核, dev_t 是 32 位的量, 12 位用作主 ...
- linux kdb 内核调试器
许多读者可能奇怪为什么内核没有建立更多高级的调试特性在里面.答案, 非常简单, 是 Linus 不相信交互式的调试器. 他担心它们会导致不好的修改, 这些修改给问题打了补丁 而不是找到问题的真正原因. ...
- [学习笔记]Pollard-Rho
之前学的都是假的 %%zzt Miller_Rabin:Miller-Rabin与二次探测 大质数分解: 找到所有质因子,再logn搞出质因子的次数 方法:不断找到一个约数d,递归d,n/d进行分解, ...
- Eclipse修改编码字体
步骤:Window-->Preference-->General-->Appearance-->Colors and Fonts-->java-->java Edi ...
- Array数组的常用方法
1.concat()链接数组 var a = [1,2,3]; console.log(a.concat(4,5));//[1,2,3,4,5] 2.join()分隔符链接数组变字符串,如果省略该参数 ...
- Java中try catch finally执行
直接上代码实例: public static void main(String[] args) { System.out.println(test1()); } static int test1 ...
- ES6/ES7/ES8新特性
ES6 变量的改变 let const 2. 字符串新增方法 let str = 'react'; str.includes('re') // true str.repeat(3) // reactr ...