解决一类极大子矩形问题(悬线法)
来源:互联网 发布:共有计价软件下载 编辑:程序博客网 时间:2024/06/07 01:10
(以下内容参考王知昆国家集训队论文)
最大子矩形问题
在一个给定的矩形网格中有一些障碍点,要找出网格内部不包含任何障碍点,且边界与坐标轴平行的最大子矩形。
两种算法
1.枚举左端点,不断限制上下长度。
2.悬线法。每个点都向其上方第一个障碍点连线,dp出左右最大距离。
第一种算法复杂度为
第二种算法复杂度为
(1)奶牛浴场
John 要在矩形牛场中建造一个大型浴场,但是这个大型浴场不能包含任何一个奶牛的产奶点,但产奶点可以出在浴场的边界上。John 的牛场和规划的浴场都是矩形,浴场要完全位于牛场之内,并且浴场的轮廓要与牛场的轮廓平行或者重合。要求所求浴场的面积尽可能大。 L,W≤30000,S≤5000
第一种算法直接秒过了。。Code:http://paste.ubuntu.com/25978156/
悬线法有点难写。。(而且被卡常)
注意的是离散化之后悬线上下都在边缘的无法处理,这个之后再排序扫一遍即可。
Code:http://paste.ubuntu.com/25979343/
(2)[OIBH]Candy Box(原题目已经找不到了,可以拿下面贴出标程去对拍(注意输入格式),网上的程序大多有问题被我Hack掉了)
一个被分为 n*m个格子的糖果盒,第 i 行第 j 列位置的格子里面有a[i][j]颗糖。本来tenshi打算送这盒糖果给某 PPMM 的,但是就在要送出糖果盒的前一天晚上,一只极其可恶的老鼠夜袭糖果盒,有部分格子被洗劫并且穿了洞。tenshi 必须尽快从这个糖果盒里面切割出一个矩形糖果盒,新的糖果盒不能有洞,并且 tenshi 希望保留在新糖果盒内的糖的总数尽量多。
悬线法裸题。Code:http://paste.ubuntu.com/25978340/
这种点不能在边缘的悬线就比上一道题好写多了。。
附上一道类似题目的链接:
BZOJ3039: 玉蟾宫
- 解决一类极大子矩形问题(悬线法)
- 浅谈用极大化思想解决最大子矩形问题
- 浅谈用极大化思想解决最大子矩形问题
- 《浅谈用极大化思想解决最大子矩形问题》
- 极大化思想解决最大子矩形问题
- 浅谈用极大化思想解决最大子矩形问题
- 浅谈用极大化思想解决最大子矩形问题
- 用极大化思想解决最大子矩形问题
- 浅谈用极大化思想解决最大子矩形问题
- 浅谈用极大化思想解决最大子矩形问题
- 王知昆:《浅谈用极大化思想解决最大子矩形问题》
- 王知昆:《浅谈用极大化思想解决最大子矩形问题》
- 转 浅谈用极大化思想解决最大子矩形问题
- [Vijos1055]奶牛浴场(极大子矩形)
- [BZOJ1057][ZJOI2007]棋盘制作(极大子矩形)
- 浅谈用极大化思想解决最大子矩阵问题
- 浅谈用极大化思想解决最大子矩阵问题
- 旋转卡壳解决一类问题(资料)
- spring mvc返回json数据的三种方式
- ES6-对象的扩展-属性的简介表示法
- 【c程序】C语言编码规范
- tp5做无刷新分页
- 利用Git GUI来使用GitHub远程仓库
- 解决一类极大子矩形问题(悬线法)
- vue的结构
- Spring中@Component的作用
- 启动tomact运行到此卡在这信息上 [com.alibaba.druid.pool.DruidDataSource:450] {dataSource-1} inited
- POJ2431---Expedition(加油问题,优先队列)
- 使用markdown构建一次写作,无缝迁移的博客
- windows 10 和ubuntu双系统 时间不协调的问题
- acutPrintf AcString
- 欢迎使用CSDN-markdown编辑器