- 1、本文档共27页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
浅析信息学中的“分”与“合” 福建省福州第三中学 杨沐 引言 分 “分”的思想是将一个难以直接解决的大问题,转化成一些规模较小或限制某些条件的子问题来思考,以求将问题解决。 合 “合”的思想与“分”相对,是将一些零散的小问题的解决合并成一个大问题,从而取得整个问题的解决。 引言 [例一]牛奶模版 [例二]树的重建 [例三]最优序列 [例三]最优序列 给定一个长度为N的正整数序列。 求一个子序列,使得原序列中任意长度为M的子串中被选出的元素不超过K个。 要求选出的元素之和最大。 数据范围: 1≤N≤1000 1≤K,M≤100 [例三]最优序列 输入数据: N=10,M=4,K=2 {7,3,4,8,2,6,5,7,4,8} 输出答案: 36 {7,3,4,8,2,6,5,7,4,8} [例三]最优序列——分析 动态规划 线段树? 怎么办? [例三]最优序列——“分”繁为简 动态规划之所以不可行,原因在于——题目中K和M的范围太大了! 利用“分”的思想,我们尝试限制K,令K=1,也就是对于长度为M的子串,最多只选一个元素作为原题的一个子问题: [例三]最优序列——子问题 给定一个长度为N的正整数序列。 求一个子序列,使得原序列中任意长度为M的子串中被选出的元素不超过1个。 要求选出的元素之和最大。 数据范围: 1≤N≤1000 1≤M≤100 [例三]最优序列——“分”繁为简 对于这个子问题,由于K做了限制,我们可以用动态规划来解决这个问题。 设dp[i]表示前i个元素,在满足题意的前提下选出的最大和 dp[i]=max(dp[i-1],dp[i-M]+value[i]) i≥M dp[i]=max(dp[i-1],value[i]) 0iM dp[0]=0 [例三]最优序列——进一步分析 子问题 原问题 [例三]最优序列——进一步分析 命题 原问题的解集等价于由K组互不相交的子问题的解组成的解集。 引理一 原问题的任意一组解都可以由K组不相交的子问题的解组成。 引理二 任意K组不相交的子问题的解的并均为原问题的解。 引理一 原问题的任意一组解都可以由K组不相交的子问题的解组成。 证明 对于原问题的任意一解P={a1,a2,a3…at},a1a2a3…at。设sum[i]表示该解在区间[1,i]内取出的元素个数,则根据题意满足不等式: sum[i]-sum[i-M]≤K 以下,我们给出一种构造法使之能产生一组与该解等价的K个子问题的解。 设K个子问题的解分别为P0,P1,P2…Pk-1, 令Pi={aj | j≡i (mod K)} ∵sum[i]-sum[i-M]≤K ∴ai-ai-k≥M ∴P0,P1,P2…Pk-1均为合法的子问题的解 又因为P0∪P1∪P2…∪Pk-1=P,因此我们成功地构造出了子问题的解。 引理二 任意K组不相交的子问题的解的并均为原问题的解。 证明 设K个子问题的不相交的解分别为P0,P1,P2…Pk-1 , Pi={ai1,ai2,ai3…ail},ai1ai2ai3…ail ∵对于任意长度为M的区间,Pi至多只有一个元素在其内部 设P=P0∪P1∪P2…∪Pk-1, 则对于任意长度为M的区间,P在其内部选出的元素个数不超过K个 ∴任意K组互不相交的子问题的解的并都是原问题的合法解。 引理一与引理二分别证明了命题的充分性和必要性,因此该命题成立? [例三]最优序列——进一步分析 题目中存在着一个潜条件,即: 每个元素只能被选一次 若直接套用K次动态规划来求解,有可能导致某个元素被取多次,无法满足题目中的这个条件。 [例三]最优序列——进一步分析 N=10,M=4,K=2 { } 3 3 3 3 动态规划:12 贪心:9 [例三]最优序列——整体分析 考虑动态规划与贪心之所以不能得到正确解,其关键原因在于——题目中存在着一个元素只能被取一次的限制,而对于这种限制各点被选取次数的题目,我们通常使用网络流来解决,那么这道题是否也能通过转化图论模型来使用网络流解决呢?答案是肯定的。 [例三]最优序列——整体分析 构造带权网络G=(V,A,C) 序列中的每个元素i用顶点i与i’表示,i→i’连边,容量为1,费用为该元素的数值value[i],图中包含源S与汇T。 所有点i向点(i+1)连边,容量为+∞
您可能关注的文档
最近下载
- 苏教版小学英语3a-5a单词表(2015).doc VIP
- 贵州钢绳(集团)有限责任公司招聘笔试真题2021.docx VIP
- 2025年职业卫生评价考试真题二十 .pdf VIP
- 2025年贵州钢绳集团有限责任公司控股人员招聘笔试备考试题及答案解析.docx VIP
- 全血和各种血液成分的临床应用.ppt VIP
- 软件系统安全保障方案.docx VIP
- 2025年云南省中考地理试卷(含解析).pdf
- 四川省拟任县处级试题 四川省拟任县处级党政领导干部任职资格考试题.doc VIP
- CECS 349-2013 一体化给水处理装置应用技术规程.docx
- 茶皂素杀螺活性及对3种水生生物的安全性.docx
文档评论(0)