(递推)常用递推式总结及实现

常用递推式

后面问题的解可以由前面问题的解递推而来,每一项都与前面若干项有一定关联。它是一种用若干步可以重复的简单运算来描述复杂问题的方法。

爬楼梯和兔子问题和斐波那契:f(n)=f(n−1)+f(n−2);f(1)=1,f(2)=1f(n)=f(n-1)+f(n-2) ; f(1)=1,f(2)=1 f(n)=f(n1)+f(n2);f(1)=1,f(2)=1
直线分割平面:f(n)=f(n−1)+nf(n)=f(n-1)+n f(n)=f(n1)+n
n封信,n个信封,所有信装错了信封可能情况总数(错排公式):
f(n)=(n−1)(f(n−1)+f(n−2));f(1)=0,f(2)=1f(n)=(n-1)(f(n-1)+f(n-2)) ;f(1)=0,f(2)=1 f(n)=(n1)(f(n1)+f(n2));f(1)=0,f(2)=1
杨辉三角:
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
f[i][j]=f[i−1][j−1]+f[i−1][j];(j不为1的时候)f[i][j]=f[i-1][j-1]+f[i-1][j];(j不为1的时候) f[i][j]=f[i1][j1]+f[i1][j];(j1)
f[i][j]=1(j为1的时候)f[i][j]=1(j为1的时候) f[i][j]=1j1

实现递推:

一维递推以斐波那契为例:

#include <iostream>
using namespace std;
const int N = 1e3;
typedef long long ll;
ll f[N];int main() {int n;cin>>n;f[0]=f[1]=1;for(int i=2;i<=n;++i){f[i]=f[i-1]+f[i-2];}cout<<f[n]<<endl;ll a=1,b=1,c=1;for(int i=2;i<=n;++i){c=a+b;a=b;b=c;}cout<<c<<endl;return 0;
}

二维递推以杨辉三角为例:

#include <iostream>
using namespace std;
typedef long long ll;
const int N = 55;
ll f[N][N];
void init(){for(int i=1;i<N;++i){for(int j=1;j<=i;++j){if(j==1){f[i][j]=1;}else{f[i][j]=f[i-1][j-1]+f[i-1][j];}}}
}
int main () {init();int n,m;cin>>n>>m;cout<<f[n][m]<<endl;return 0;
}

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/560562.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

mysql建表语句utf-8_mysql 创建utf-8数据集

之前数据库都是默认的‘latin1 ’&#xff0c;由于业务需求&#xff0c;需要把数据集修改为utf-8(1)创建一个新的数据库&#xff0c;并设置默认的格式为utf-8CREATE DATABASE IF NOT EXISTS yourdbname DEFAULT CHARSET utf8 COLLATE utf8_general_ci;(2) 将这个yourdbname 数据…

html读取servlet,简单html与servlet交互(HTML利用servlet读取txt)

1.usercheck.htmlhref"../lib/ligerUI/skins/Aqua/css/usertext.css" rel"stylesheet"type"text/css" />填写用户名/>id"verifyButton"/>>2.usertext.css.userClass {border: 1px solid red ;background-image:url(../../…

mysql dnslog_dnslog小技巧

一、dnslog利用场景主要针对无回显的情况。Sql-BlindRCESSRFRFI(Remote File Inclusion)二、原理将dnslog平台中的特有字段payload带入目标发起dns请求&#xff0c;通过dns解析将请求后的关键信息组合成新的三级域名带出&#xff0c;在ns服务器的dns日志中显示出来。三、案例展…

卷积积分

文章目录卷积积分信号的时域分解卷积公式卷积积分定义卷积积分图解法&#xff1a;卷积的性质&#xff1a;常用卷积重要公式卷积求解方法用梳状函数卷积产生周期信号矩形脉冲的卷积产生三角形和梯形脉冲自相关互相关函数定义相关与卷积卷积积分 本质&#xff1a;信号分解 f(t)…

2019哈佛计算机专业录取,2019哈佛大学早申请录取数据公布 录取率再降1个点仅为13.4%...

出结果了&#xff0c;出结果了&#xff0c;作为美国在全球范围内最负盛名的哈佛大学&#xff0c;与近日公布2019美国本科申请提前录取的相关数据。今年哈佛大学本科学院向6,968位在2023届提前录取轮次申请人中的935位发出了录取通知&#xff0c;申请录取率约为13.4%&#xff0c…

mysql master 监控_可用于监控 mysql Master Slave 状态的python代码

代码如下:import osimport sysimport MySQLdbdef getStatus(conn):query ” SHOW SLAVE STATUS “# print querycursor conn.cursor()cursor.execute(query)result cursor.fetchall()return result[0]def resolve(conn):cursor conn.cursor()query1 “set global sql_slav…

python类和oop基础知识

文章目录oop:面向对象程序设计python类的特点&#xff1a;oop基本概念&#xff1a;1.属性继承搜索:2.类和实例&#xff1a;3.类方法调用4.编写类树5.代码重用oop:面向对象程序设计 1.类&#xff1a;一些函数的包&#xff0c;这些函数大量使用并处理内置对象类型。 2.类的设计…

计算机语言中tc是什么,新人必须了解的几个TC常用语和脚本基础知识!

基础知识TC常用语一,函数在百度百科中是这样解释函数的:函数(function)表示每个输入值对应唯一输出值的一种对应关系。在计算机定义中函数过程中的这些语句用于完成某些有意义的工作——通常是处理文本&#xff0c;控制输入或计算数值。通过在程序代码中引入函数名称和所需的参…

mysql中pi是什么意思_MySQL 基础知识与常用命令

MySQLMySQL是一种开放源代码的关系型数据库管理系统(RDBMS)&#xff0c;MySQL数据库系统使用最常用的数据库管理语言--结构化查询语言(SQL)进行数据库管理。MySQL在过去由于性能高、成本低、可靠性好&#xff0c;已经成为最流行的开源数据库&#xff0c;因此被广泛地应用在Inte…

科幻计算机类小说,短篇科幻小说推荐 | 黄金时代的五部科幻杰作

编注&#xff1a;本文是少数派读书月「我读过的好书」征文活动的入围文章。本文仅代表作者本人观点&#xff0c;少数派对标题和排版略作调整。想了解如何参与本次读书征文&#xff0c;赢取各种丰厚奖品&#xff0c;你可以 点此查看 活动规则和奖品清单。文章包含五个故事的情节…

数据结构:单链表

文章目录链表&#xff1a;单链表的实现及操作&#xff1a;1.指针描述的单链表L存储结构2.查找L的第i个元素&#xff0c;将其值赋值给e3.在L的第i个位置之前插入元素e4.在L中&#xff0c;删除第i个元素&#xff0c;并返回其值e5.输入n个元素&#xff0c;建立带头节点的单链表L6.…

mysql离散查询_如何写出高性能的MySQL查询

作者&#xff1a;会写代码的猪 发布时间&#xff1a;December 25, 2009 分类&#xff1a;猪在写代码想写这样一篇文章很久了&#xff0c;但始终没有下手。最近帮同事看了几个查询&#xff0c;而且自己也在考虑一个索引系统的问题&#xff0c;所以今天就把这个写了。介绍一下MyS…

计算机中丢失msc,mscvr120.dll32位/64位版_修复计算机中丢失msvcr120.dll

mscvr120.dll32位/64位版_修复计算机中丢失msvcr120.dllmscvr120.dll是系统的非常重要的一个文件&#xff0c;相信很多的人都是遇到文件丢失的情况&#xff0c;这个时候就需要你在下载一个dll文件使用了&#xff01;现在就为大家提供最新的dll文件下载&#xff0c;需要的可以看…

mysql解压缩版配置_MySQL 5.6 for Windows 解压缩版配置安装

1、MySQL安装文件分为两种&#xff0c;一种是msi格式的&#xff0c;一种是zip格式的。如果是msi格式的可以直接点击安装&#xff0c;按照它给出的安装提示进行安装(相信大家的英文可以看懂英文提示)&#xff0c;一般MySQL将会安装在C:\Program Files\MySQL\MySQL Server 5.6 该…

数据结构:顺序栈

文章目录栈&#xff1a;顺序栈的实现及操作&#xff1a;1.定义一个栈2.构造一个空栈3.取栈顶元素4.插入元素e5.删除栈顶元素&#xff0c;返回其值6.清空栈&#xff0c;销毁栈栈的操作实例及代码&#xff1a;栈&#xff1a; 从数据结构上来看&#xff0c;栈也是线性表&#xff…

计算机二级考试开考多久能出来,【计算机二级】明天就要开考了,你们准备好了吗?...

原标题&#xff1a;【计算机二级】明天就要开考了&#xff0c;你们准备好了吗&#xff1f;计算机二级考试马上要来了现在距离考试只有不到几个小时的时间了不知道各位同学准备的怎么样了呢&#xff1f;人有多大胆&#xff0c;复习拖多晚但这可不是什么好习惯奔赴“战场”之前先…

mysql面试题 高级_高级MySQL数据库面试问题 附答案

mysql -u USER_NAME -xml -e SELECT * FROM table_name > table_name.xml上面的例子中USER_NAME是数据库的用户名&#xff0c;table_name是待导出为xml文件的表名&#xff0c;table_name.xml是存放数据的xml文件9. MySQL_pconnect是什么? 它和MySQL_connect有什么区别?答&…

办公室中有一台计算机连接打印机,办公室就一个打印机,怎么让多个电脑一起用...

中小型企业的办公室一般只配一台打印机&#xff0c;每次打印东西都要把文件拷在U盘再转到连接打印机的那台电脑&#xff0c;很麻烦。那么怎么才能实现打印机多台电脑共享呢&#xff1f;以下把连接打印机的电脑成为“主电脑”&#xff0c;把需要的共享的电脑叫“客电脑”。1.设置…

数据结构:单链队列

文章目录队列&#xff1a;单链队列的实现及操作&#xff1a;1.定义一个队列2.构造一个空队列3.销毁队列4.插入元素e到队尾5.删除队头元素&#xff0c;用e返回其值单链队列操作实例及代码&#xff1a;队列&#xff1a; 队列是先进先出的线性表。 队列只允许在表的一端插入元素…

php修改mysql数据找不到_php 如何修改mysql数据

PHP MYSQL 修改删除数据创建userinfo_update.php&#xff0c;用于查询用户信息&#xff0c;先显示信息&#xff0c;在修改&#xff1a;先通过GET获取用户编号查询用户信息&#xff1a;$sql "select * from user_info where user_id".$_GET[userId]."";$re…