一个等差×等比数列连加式
背景
今天在做数字信号处理作业的时候,发现了这样的一种连加式。我们在高中学习了如何计算等比数列,那我们再引申一些,得到下面的一个数列。
假如存在这么一个通项an=nmqna_n = n^m q^nan=nmqn,我们定义一个连加式如下:Sn=∑n=0N0−1anS_n = \sum_{n = 0} ^ {N_0 - 1} a_nSn=∑n=0N0−1an,这种问题应该如何解决呢?
引言
我们简要介绍一个公式,也很简单,如下:nm−(n−1)m=Cm1nm−1+Cm2nm−2(−1)1+Cm3nm−3(−1)2+⋯+Cmmn0(−1)m−1n^m - (n-1)^m = C_m^1 n^{m-1}+C_m^2n^{m-2}(-1)^1+C_m^3n^{m-3}(-1)^2+\dots+C_m^mn^{0}(-1)^{m-1}nm−(n−1)m=Cm1nm−1+Cm2nm−2(−1)1+Cm3nm−3(−1)2+⋯+Cmmn0(−1)m−1
我们在计算连加式的时候,要利用等比数列的计算思想,对不相等的系数呢,最好给它化成相等的数。我在这里列一个表格。我们定义一种标记如下:Sni=∑n=1N0−1niqnS_n^i = \sum_{n = 1} ^ {N_0 - 1}n^i q^nSni=∑n=1N0−1niqn。并且在计算SnmS_n^mSnm的时候,假定Snm−1,Snm−2…Sn0S_n^{m-1},S_n^{m-2}\dots S_n^0Snm−1,Snm−2…Sn0都已知。我们可以推出一个递推式,这个递推式是由Snm−1,Snm−2…Sn0S_n^{m-1},S_n^{m-2}\dots S_n^0Snm−1,Snm−2…Sn0组成。我们先来看下面的这个式子。
Snm=q+2mq2+3mq3⋯+(N0−1)mqN0−1S_n^m = q + 2^mq^2+3^mq^3\dots+(N_0-1)^mq^{N_0-1}Snm=q+2mq2+3mq3⋯+(N0−1)mqN0−1,我们把它们的系数全部写下来,看看有什么特征。
1q1q1q | 2mq22^mq^22mq2 | 3mq33^mq^33mq3 | …\dots… | (N0−1)mqN0−1(N_0-1)^mq^{N_0-1}(N0−1)mqN0−1 |
---|
我们尽可能地去利用等比数列的求和公式,所以我们进行如下的展开。
1q1q1q | 1q21q^21q2 | 1q31q^31q3 | …\dots… | 1qN0−11q^{N_0-1}1qN0−1 |
---|---|---|---|---|
000 | (2m−1)q2(2^m-1)q^2(2m−1)q2 | (2m−1)q3(2^m-1)q^3(2m−1)q3 | …\dots… | (2m−1)qN0−1(2^m-1)q^{N_0-1}(2m−1)qN0−1 |
000 | 000 | (3m−2m)q3(3^m-2^m)q^3(3m−2m)q3 | …\dots… | (3m−2m)qN0−1(3^m-2^m)q^{N_0-1}(3m−2m)qN0−1 |
000 | 000 | 000 | …\dots… | (4m−3m)qN0−1(4^m-3^m)q^{N_0-1}(4m−3m)qN0−1 |
…\dots… | …\dots… | …\dots… | …\dots… | …\dots… |
000 | 000 | 000 | …\dots… | ((N0−1)m−(N0−2)m)qN0−1((N_0-1)^m-(N_0-2)^m)q^{N_0-1}((N0−1)m−(N0−2)m)qN0−1 |
我们知道,一个等比数列的求和公式只与首项和尾项以及公比有关。从上述展开式中,我们可以从中发现(N0−1)(N_0-1)(N0−1)个等比数列的求和。它们的和分别如下:q−qN01−q\frac{q-q^{N_0}}{1-q}1−qq−qN0,(2m−1)q2−qN01−q(2^m-1)\frac{q^2-q^{N_0}}{1-q}(2m−1)1−qq2−qN0,(3m−2m)q3−qN01−q(3^m-2^m)\frac{q^3-q^{N_0}}{1-q}(3m−2m)1−qq3−qN0…\dots…((N0−1)m−(N0−2)m)qN0−1−qN01−q((N_0-1)^m-(N_0-2)^m)\frac{q^{N_0-1}-q^{N_0}}{1-q}((N0−1)m−(N0−2)m)1−qqN0−1−qN0,而SnmS_n^mSnm就是前面一系列式子的和。我们加到一起会发现如下的式子:Snm=q+(2m−1)q2+(3m−2m)q3+⋯+(N0−1)m−(N0−2)m)qN0−11−q−(N0−1)mpN01−qS_n^m = \frac{q+(2^m-1)q^2+(3^m-2^m)q^3+\dots+(N_0-1)^m-(N_0-2)^m)q^{N_0-1}}{1-q}-\frac{(N_0-1)^mp^{N_0}}{1-q}Snm=1−qq+(2m−1)q2+(3m−2m)q3+⋯+(N0−1)m−(N0−2)m)qN0−1−1−q(N0−1)mpN0,这个时候,我们的工作重心就转移到解前一段很长的式子之和上,我们发现:nm−(n−1)m=Cm1nm−1+Cm2nm−2(−1)1+Cm3nm−3(−1)2+⋯+Cmmn0(−1)m−1n^m - (n-1)^m = C_m^1 n^{m-1}+C_m^2n^{m-2}(-1)^1+C_m^3n^{m-3}(-1)^2+\dots+C_m^mn^{0}(-1)^{m-1}nm−(n−1)m=Cm1nm−1+Cm2nm−2(−1)1+Cm3nm−3(−1)2+⋯+Cmmn0(−1)m−1,这就意味着我们可以将第一部分式子中的系数给再次展开,可以得到如下的式子:q+(2m−1)q2+(3m−2m)q3+⋯+(N0−1)m−(N0−2)m)qN0−1=Cm1(−1)0(1m−1q+2m−1q2+3m−1q3+⋯+(N0−1)m−1qN0−1)+Cm2(−1)1(1m−2q+2m−2q2+3m−2q3+⋯+(N0−1)m−2qN0−1)+Cm3(−1)2(1m−3q+2m−3q2+3m−3q3+⋯+(N0−1)m−3qN0−1)+⋯+Cmm(−1)m−1(10q+20q2+30q3+⋯+(N0−1)0qN0−1)q+(2^m-1)q^2+(3^m-2^m)q^3+\dots+(N_0-1)^m-(N_0-2)^m)q^{N_0-1} = C_m^1(-1)^0(1^{m-1}q+2^{m-1}q^2+3^{m-1}q^3+\dots+(N_0-1)^{m-1}q^{N_0-1})+C_m^2(-1)^1(1^{m-2}q+2^{m-2}q^2+3^{m-2}q^3+\dots+(N_0-1)^{m-2}q^{N_0-1})+C_m^3(-1)^2(1^{m-3}q+2^{m-3}q^2+3^{m-3}q^3+\dots+(N_0-1)^{m-3}q^{N_0-1})+\dots+C_m^m(-1)^{m-1}(1^{0}q+2^{0}q^2+3^{0}q^3+\dots+(N_0-1)^{0}q^{N_0-1})q+(2m−1)q2+(3m−2m)q3+⋯+(N0−1)m−(N0−2)m)qN0−1=Cm1(−1)0(1m−1q+2m−1q2+3m−1q3+⋯+(N0−1)m−1qN0−1)+Cm2(−1)1(1m−2q+2m−2q2+3m−2q3+⋯+(N0−1)m−2qN0−1)+Cm3(−1)2(1m−3q+2m−3q2+3m−3q3+⋯+(N0−1)m−3qN0−1)+⋯+Cmm(−1)m−1(10q+20q2+30q3+⋯+(N0−1)0qN0−1)幸运地是这个式子仍然是可以简化的,我们简化得到下面的形式:∑k=1mCmk(−1)k−1Snm−k\sum_{k = 1}^{m}C_m^k(-1)^{k-1}S_n^{m-k}∑k=1mCmk(−1)k−1Snm−k,那我们再回到上面的式子,我们可以得到如下的式子:Snm=∑k=1mCmk(−1)k−1Snm−k1−q−(N0−1)mpN01−qS_n^m = \frac{\sum_{k = 1}^{m}C_m^k(-1)^{k-1}S_n^{m-k}}{1-q}-\frac{(N_0-1)^mp^{N_0}}{1-q}Snm=1−q∑k=1mCmk(−1)k−1Snm−k−1−q(N0−1)mpN0,那我们就可以得知,在假定Snm−1,Snm−2…Sn0S_n^{m-1},S_n^{m-2}\dots S_n^0Snm−1,Snm−2…Sn0都已知的情况下,我们可以推出SnmS_n^mSnm的值。
尾声
又发现了一个小东西,迫不及待地发出来博各位看官一乐…
一个等差×等比数列连加式相关推荐
- 一个公式来说明加接圈的作用和缺点
一个公式来说明加接圈的作用和缺点 在很多视觉项目中,如果想要将视野缩小,一种方式是换用长焦镜头:另一种方式则是通过加接圈的方式来实现.那么,接圈到底改变的是什么参数,能够使图像进行放大呢? 核心公式 ...
- bootstrap设计登录页面_前端小白如何在10分钟内打造一个爆款Web响应式登录界面?...
对于前端小白(例如:专注后端代码N年的攻城狮),自己编写一个漂亮的Web登录页面似乎在设计上有些捉襟见肘,不懂UI设计,颜色搭配极度的混乱(主色,辅助色,配色,色彩渐变,动画效果等等,看起来一堆乱七八 ...
- libGDX跨平台游戏开发框架入门:开发一个小游戏之加载资源
目录 前言 加载资源 libGDX资源目录说明 配置各个平台启动器 desktop模块启动器设置 Android模块启动器设置 加速度计和指南针 html模块启动器设置 编写加载资产代码 1. 加载图 ...
- 一个java的DES加解密类转换成C#
原文:一个java的DES加解密类转换成C# 一个java的des加密解密代码如下: //package com.visionsky.util;import java.security.*; //im ...
- 崛起的超级智能:是否会是下一个“麦克卢汉式”预言?
腾讯科技 21世纪以来,前沿科技领域呈爆发式增长:从云计算到区块链.从谷歌大脑到华为EI智能体.从工业大脑到农业大脑.从城市神经网络到智慧社会--各种新技术和新概念层出不穷,如潮水般不断涌现,无论业界 ...
- 分享一个帮助你在线测试响应式设计的web工具 - Screenqueri.es
日期:2012-4-23 来源:GBin1.com 如果你使用responsive layout来设计网站或者web应用的话,如何有效的在不同的设备上进行测试是一个比较麻烦的事情,今天我们这里给大家 ...
- [css] 请用css写一个扫码的加载动画图
[css] 请用css写一个扫码的加载动画图 @Keyframes donut-spin { 0% { transform: rotate(0deg); } 100% { transform: rot ...
- windows环境下IDEA安装和配置和第一个IDEA项目运行加常用快捷键
IDEA安装和配置和第一个IDEA项目运行加常用快捷键 IDEA开发工具是和eclipse.myeclipse差不多的java开发工具. IDEA是一个专门针对Java的集成开发工具(IDE),由Ja ...
- 一个到顶部自动加载更多的ListView
为什么80%的码农都做不了架构师?>>> 一个可以到顶自动加载更多的ListView,实现该控件的目的是用于im聊天页面场景,一些第三方实现的下拉加载更多也可以实现类似功能,但 ...
最新文章
- GitHub有趣分享:Thanos(灭霸命令)
- Win7 64位的SSDTHOOK(1)---SSDT表的寻找
- Angular7教程-06-页面与数据交互
- 使用spark-sql-perf评测spark 2.0
- 点餐业务服务拆分分析
- 腾讯全球数字生态大会进入倒计时,原生技术专场开放云报名
- linux mysql v_Linux 主机升级MySQL v5.5 性能提升360%
- 非网络引用element-ui css导致图标无法正常显示的解决办法
- 原型设计+用户规格说明书
- http中的请求头各部分都是什么意思_硬核!30 张图解 HTTP 常见的面试题
- bootstrap框架菜单栏颜色设置_Bootstrap Icons - bootstrap专用的漂亮图标库,可以免费商用...
- sql server2008 远程过程调用失败
- 开课吧课堂:什么是HashSet类
- windows网络排查
- 【电子产品】ThinkPad S5 Intel R Dual Band Wireless-AC 3165 网卡驱动莫名
- 最大似然函数及其求解
- python 隐函数作图(原创简单方法)
- 适配手机VR眼镜的VR视频播放器种类大全
- vscode使用技巧
- Python Selenium 关键字驱动
热门文章
- 向微信公众号文章中添加pdf、jpg、png、xlsx等文件
- 用标准理性的思维找女朋友
- 中国大学生计算机设计大赛
- tf.concat, tf.stack和tf.unstack的用法
- 【数据压缩(五)】LZW编解码c语言实现和分析
- SPI协议分析仪的使用介绍及flash无法启动两种案例分析
- mysql 查看表v空间自增涨_专业解决 MySQL 查询速度慢与性能差!
- 使用Javascript代码编写一个“杭州亚运会倒计时”网页
- python中如何画出决策树_使用Python绘制决策树
- pyinstaller 打包项目及使用UPX压缩