首页 > 其他分享 >数学归纳法证明贪心实例

数学归纳法证明贪心实例

时间:2023-07-12 23:23:48浏览次数:38  
标签:方案 覆盖 实例 区间 归纳法 最优 考虑 贪心

1.选择不相交区间问题(具体见一本通提高篇P4)
假设已经选择的区间是最优的方案的一部分,下面考虑如何选择会使方案达到最优。
因为是按照结束时间升序排序的,如果我们不选择当前这一个合法的(设为A)而是去选择之后的合法的(设为B),那么无论最后的方案是怎样的,都可以将B换成A从而符合题意。
由数学归纳法,最开始一个都没有选的时候可以看作是最优方案的一部分,因此算法正确

2.区间选点问题(具体见一本通提高篇P6)
假设已经选择的点和被覆盖的区间是最优的方案的一部分(注意我们是按照区间考虑的),下面考虑如何选择会使方案达到最优。
首先是一个前提:如果一个区间(设为A)在被考虑之前已经被若干个点给覆盖了,那么就不用再考虑主动在这个区间上放点了。
因为是按照结束位置升序排序的,对任意一个被考虑主动放点的区间(此时这个区间前面的区间都已经被覆盖了哈,不用考虑了),点都是放在此区间的右端点处最好。若此时还要考虑A,显然没有考虑后面的未被覆盖的区间优(决策包容性,因为是按照结束位置升序排序)
对于当前的状态,我们显然是选择第一个未被覆盖的区间更优(决策包容性)
由数学归纳法,最开始一个点都没有的时候可以看作是最优方案的一部分,因此算法正确

3.区间覆盖问题(具体见一本通提高篇P9)
假设从左到右已经覆盖了一段指定区间了且选择的区间是最优的方案的一部分,下面考虑如何选择会使方案达到最优。
由决策包容性易得,已经被覆盖的指定区间就不用在考虑了,因此一本通直接将\(s\)更新为右端点坐标(不会在后面了,因为决策包容性)
由数学归纳法,最开始一个点都没有被覆盖的时候可以看作是最优方案的一部分,因此算法正确

4.带限期和罚款的单位时间任务调度
跟上面差不多,不妨证明一下

标签:方案,覆盖,实例,区间,归纳法,最优,考虑,贪心
From: https://www.cnblogs.com/dingxingdi/p/17549149.html

相关文章

  • 4th-code实例
       前面章节中我们已经学会了如何用Python输出"Hello,World!",英文没有问题,但是如果你输出中文字符"你好,世界"就有可能会碰到中文编码问题。Python文件中如果未指定编码,在执行过程会出现报错:#!/usr/bin/pythonprint("你好,世界")以上程序执行输出结果为:File"test.py",......
  • Strong Password(贪心思想)
    StrongPasswordtimelimitpertest2secondsmemorylimitpertest256megabytesinputstandardinputoutputstandardoutputMonocarpfinallygotthecouragetoregisteronForceCoders.Hecameupwithahandlebutisstillthinkingaboutthepassw......
  • Java实现浏览器端大文件分片上传实例解析
    ​ 我们平时经常做的是上传文件,上传文件夹与上传文件类似,但也有一些不同之处,这次做了上传文件夹就记录下以备后用。首先我们需要了解的是上传文件三要素:1.表单提交方式:post(get方式提交有大小限制,post没有)2.表单的enctype属性:必须设置为multipart/form-data.3.表单必须......
  • Task的基本概念、使用方法和实例代码
    基本概念是一种用于异步编程的概念。Task的重要特点是可以在后台执行方法或操作,而不会阻塞主线程或UI线程。封装的异步操作,表示执行的操作正在进行。可以表示一个方法的返回值或者表示执行的操作已经完成。Task类的主要成员属性:TaskStatus、IsCanceled、IsCompleted、IsFa......
  • 数字码头系统APP开发实例之会员端功能模块介绍
    数字码头是一款聚合性电商系统,目前开发的数字码头APP1.0版本包含的电商系统、积分系统、看广告系统、卷轴模式系统、签到模块组成。下面我就数字码头系统开发的功能模块,和大家展开探讨,本文主要的内容是主题模块架构和APP闭环商业逻辑的分享。任务一个商业模式系统都要围绕用户激励......
  • JVM(八)对象的实例化内存布局与访问定位
    JVM(八)对象的实例化内存布局与访问定位1对象创建的方式new变形1:Class的newInstance(),即反射Class的newInstance反射的使用较为苛刻,要求只能调用空参的构造器,而且权限必须是public这种方式再jdk9中被标记为过时了Constructor的newInstance(),也属于是反射可以调......
  • vue学习——vue实例与组件
     vc不是通用的称呼,官方的说法是组件实例对象 组件实例的原型对象的原型对象是vue的原型对象 ......
  • 实例分享| anyRTC 部署安徽某市应急实战指挥平台
    在当前的社会环境下,应对各种突发事件和危机管理是各级政府和企事业单位的重要职责,为了提高应急指挥的效率和效果,充分利用现代信息技术为突发事件的应急处理服务是当前的大趋势,整合相关资源,应对各种自然灾害等突发紧急事件,第一时间应对突发紧急事件、实现快速反应、减少损失的目标......
  • 实例分享| anyRTC 部署安徽某市应急实战指挥平台
    在当前的社会环境下,应对各种突发事件和危机管理是各级政府和企事业单位的重要职责,为了提高应急指挥的效率和效果,充分利用现代信息技术为突发事件的应急处理服务是当前的大趋势,整合相关资源,应对各种自然灾害等突发紧急事件,第一时间应对突发紧急事件、实现快速反应、减少损失的目标。......
  • Scrapy框架爬取cnblog实例
    Scrapy框架爬取cnblog下一页简单实例犯了一个错误:直接拿浏览器点出来第二页链接去做拼接,导致一直爬不到下一页实际上应该是:blog.pyimportscrapyfromscrapyimportRequestfrombs4importBeautifulSoupimporttimeclassBlogSpider(scrapy.Spider):name="bl......