




已阅读5页,还剩33页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
2020 1 1 1 ACM程序设计 计算机学院刘春英 2020 1 1 2 今天 你了吗 AC 2020 1 1 3 每周一星 2 06057231杨振华 2020 1 1 4 第三讲递推求解 2020 1 1 5 先来看一个超级简单的例题 有5人坐在一起 当问第5个人多少岁 他说比第4个人大2岁 问第4个人多少岁 他说比第3个人大2岁 依此下去 问第一个人多少岁 他说他10岁 最后求第5个人多少岁 如果所坐的不是5人而是n人 写出第n个人的年龄表达式 2020 1 1 6 显然可以得到如下公式 化简后的公式 F n 10 n 1 2 2020 1 1 7 再来一个简单题 2020 1 1 8 再来一个简单题 蟠桃记 2020 1 1 9 递推公式 F n F n 1 1 2 2020 1 1 10 Fibnacci数列 即 1 2 3 5 8 13 21 34 2020 1 1 11 思考 递推公式的伟大意义 有了公式 人工计算的方法 常见的编程实现方法 优缺点 2020 1 1 12 简单思考题 在一个平面上有一个圆和n条直线 这些直线中每一条在圆内同其他直线相交 假设没有3条直线相交于一点 试问这些直线将圆分成多少区域 2020 1 1 13 是不是这个 F 1 2 F n F n 1 n 化简后 F n n n 1 2 1 2020 1 1 14 太简单了 来个稍微麻烦一些的 2020 1 1 15 例 2050 折线分割平面 问题描述 平面上有n条折线 问这些折线最多能将平面分割成多少块 样例输入12样例输出27 2020 1 1 16 思考2分钟 如何解决 2020 1 1 17 结论 Zn 2n 2n 1 2 1 2n 2n 2 n 1 为什么 2020 1 1 18 趁热打铁 来个差不多的 2020 1 1 19 说起佐罗 大家首先想到的除了他脸上的面具 恐怕还有他每次刻下的 Z 字 我们知道 一个 Z 可以把平面分为2部分 两个 Z 可以把平面分为12部分 那么 现在的问题是 如果平面上有n个 Z 平面最多可以分割为几部分呢 说明1 Z 的两端应看成射线说明2 Z 的两条射线规定为平行的 附加思考题 还没加到OJ 佐罗 的烦恼 2020 1 1 20 总结 递推求解的基本方法 首先确认 是否能很容易的得到简单情况的解 假设规模为N 1的情况已经得到解决 重点分析 当规模扩大到N时 如何枚举出所有的情况 并且要确保对于每一种子情况都能用已经得到的数据解决 强调 1 编程中的空间换时间的思想2 并不一定是从N 1到N的分析 2020 1 1 21 问题的提出 设有n条封闭曲线画在平面上 而任何两条封闭曲线恰好相交于两点 且任何三条封闭曲线不相交于同一点 问这些封闭曲线把平面分割成的区域个数 思考题 平面分割方法 2020 1 1 22 F 1 2F n F n 1 2 n 1 2020 1 1 23 某人写了n封信和n个信封 如果所有的信都装错了信封 求所有的信都装错信封 共有多少种不同情况 1465不容易系列之一 2020 1 1 24 分析思路 1 当N 1和2时 易得解 假设F N 1 和F N 2 已经得到 重点分析下面的情况 4 后者简单 只能是没装错的那封信和第N封信交换信封 没装错的那封信可以是前面N 1封信中的任意一个 故 F N 2 N 1 3 前者 对于每一种错装 可以从N 1封信中任意取一封和第N封错装 故 F N 1 N 1 2 当有N封信的时候 前面N 1封信可以有N 1或者N 2封错装 2020 1 1 25 得到如下递推公式 基本形式 d 1 0 d 2 1递归式 d n n 1 d n 1 d n 2 这就是著名的错排公式 2020 1 1 26 在2 n的一个长方形方格中 用一个1 2的骨牌铺满方格 例如n 3时 为2 3方格 骨牌的铺放方案有三种 如图 输入n 输出铺放方案的总数 思考题 2046 2020 1 1 27 有1 n的一个长方形 用1 1 1 2 1 3的骨牌铺满方格 例如当n 3时为1 3的方格 此时用1 1 1 2 1 3的骨牌铺满方格 共有四种铺法 如图 输入n 0 n 30 输出铺法总数 再思考 2020 1 1 28 仔细分析最后一个格的铺法 发现无非是用1 1 1 2 1 3三种铺法 很容易就可以得出 f n f n 1 f n 2 f n 3 其中f 1 1 f 2 2 f 3 4 典型例题 最后一个思考题 有点难度 Children sQueue 2020 1 1 30 用F n 表示n个人的合法队列 作如下分析 按照最后一个人的性别分析 他要么是男 要么是女 所以可以分两大类讨论 1 如果n个人的合法队列的最后一个人是男 则对前面n 1个人的队列没有任何限制 他只要站在最后即可 所以 这种情况一共有F n 1 2020 1 1 31 2 如果n个人的合法队列的最后一个人是女 则要求队列的第n 1个人务必也是女生 这就是说 限定了最后两个人必须都是女生 这又可以分两种情况 2 1 如果队列的前n 2个人是合法的队列 则显然后面再加两个女生 也一定是合法的 这种情况有F n 2 2 2 但是 难点在于 即使前面n 2个人不是合法的队列 加上两个女生也有可能是合法的 当然 这种长度为n 2的不合法队列 不合法的地方必须是尾巴 就是说 这里说的长度是n 2的不合法串的形式必须是 F n 4 男 女 这种情况一共有F n 4 2020 1 1 32 结论 所以 通过以上的分析 可以得到递推的通项公式 F n F n 1 F n 2 F n 4 n 3 然后就是对n 3的一些特殊情况的处理了 显然 F 0 1 没有人也是合法的 这个可以特殊处理 就像0的阶乘定义为1一样 F 1 1F 2 2F 3 4 2020 1 1 33 有排成一行的 个方格 用红 Red 粉 Pink 绿 Green 三色涂每个格子 每格涂一色 要求任何相邻的方格不能同色 且首尾两格也不同色 求全部的满足要求的涂法 附加思考题 不容易系列之 3 LELE的RPG难题 2020 1 1 34 一把钥匙有N个槽 2 N 26槽深为1 2 3 4 5 6 每钥匙至少有3个不同的深度且相连的槽其深度之差不得为5 求这样的钥匙的总数 本题无输入对2 N 26 输出满足要求的钥匙的总数 附加思考题 1480 钥匙计数之二 2020 1 1 35 详见解题报告 2020 1 1 36 Anyquestion 2020 1 1 37 HDOJ作业 一 课后在线练习 ACMProgramming Exercise 3 二 相关
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2025年护士资格考试理论知识复习题库及答案
- 茶叶考试题库及答案高中
- 园艺养护服务费协议
- 供电业务知识培训流程表课件
- 2025年生活区火灾事故应急演练演练脚本
- 2026届浙江省安吉县上墅私立高级中学化学高一上期末经典模拟试题含解析
- 2025年机关单位餐饮合作协议书
- 供气供暖专业知识培训课件
- 医院感染诊断标准与鉴别要点考核试题及答案
- 2025年医疗机构防震救灾卫生应急演练
- 2025年蛟川书院分班测试题及答案
- 飞机数字孪生与预测性维护集成
- 2025《煤炭购销合同》
- 2025年行政执法证考试必刷题库与答案
- 基孔肯雅热防控知识考试试题含答案
- 2025年机关事业单位技能资格考试-文秘资料技师历年参考题库含答案解析(5卷套题【单项选择题100题】)
- 吉林化工(危险化学品)、医药企业电气设备设施安全隐患排查指南
- 劳动用工考试试题及答案
- 护理消毒液的配置
- 2025年职业指导师(四级)考试模拟试题汇编与模拟试题解析
- 2025年全新公安基础知识题库(含答案)
评论
0/150
提交评论