悬线法是一种更优秀的枚举方式,保证了枚举悬线的集合包含了极大子矩形所在的集合,而且由最大子矩形一定是极大子矩形的定理可知,这种枚举方式可以求出最大子矩形。 具体做法是维护矩形中每个元素对应最近的左边和右边的障碍点,再维护一个高度数组记录下每个点向上可以延伸多高,还有对应的矩形向左向右可以到达的最大宽 ...
分类:
其他好文 时间:
2018-10-25 14:21:29
阅读次数:
141
题目链接:传送门 题目大意: 给出N*M的字符矩阵(由字符B/R组成),求符合下图条件的子矩阵的最大周长。 1 ≤ N,M ≤ 1000。 思路: 悬线法。 #include <iostream> #include <cstring> #include <cstdio> using namespac ...
分类:
其他好文 时间:
2018-10-23 20:49:02
阅读次数:
283
题目:https://www.lydsy.com/JudgeOnline/problem.php?id=1127 首先,把权值 > 2*k 的点作为“坏点”,然后在图中用悬线法找权值最大的子矩形; 如果权值最大的子矩形的权值 < k ,那么无解; 否则,针对这个子矩形,一列一列地删掉元素,某一时刻权 ...
分类:
其他好文 时间:
2018-10-08 17:20:03
阅读次数:
160
题目描述 国际象棋是世界上最古老的博弈游戏之一,和中国的围棋、象棋以及日本的将棋同享盛名。据说国际象棋起源于易经的思想,棋盘是一个8×8大小的黑白相间的方阵,对应八八六十四卦,黑白对应阴阳。 而我们的主人公小Q,正是国际象棋的狂热爱好者。作为一个顶尖高手,他已不满足于普通的棋盘与规则,于是他跟他的好 ...
分类:
其他好文 时间:
2018-09-22 00:54:25
阅读次数:
150
作用:O(n^2)用来解决最大矩阵和问题 思路:对于 m*n 矩阵中的任意一点,覆盖这个点的最大矩形的面积为,该点向左右最大能延伸的长度之和与向上最大能延伸的长度的乘积。 描述:首先 O(n^2) 预处理,对于矩阵上的每一个点,我们可以: 1.从它向上引一条悬线,遇到边界或障碍点停止,h[i][j] ...
分类:
其他好文 时间:
2018-09-21 23:07:40
阅读次数:
228
题目描述 国际象棋是世界上最古老的博弈游戏之一,和中国的围棋、象棋以及日本的将棋同享盛名。据说国际象棋起源于易经的思想,棋盘是一个8 \times 88×8大小的黑白相间的方阵,对应八八六十四卦,黑白对应阴阳。 而我们的主人公小Q,正是国际象棋的狂热爱好者。作为一个顶尖高手,他已不满足于普通的棋盘与 ...
分类:
其他好文 时间:
2018-09-21 23:05:28
阅读次数:
298
题目大意 给定一个01棋盘,求其中01交错的最大正方形与矩形。 解题思路: ~~其实是刚学悬线法来试试水~~ ~~还有题解中别没有看太懂~~ 发现很少有用 悬线法 的 所以介绍一下~~尝试水一篇题解~~ 以下内容部分参考 "@Clove_unique" 悬线法 用途: 解决给定矩阵中满足条件的最大子 ...
分类:
其他好文 时间:
2018-09-09 14:51:27
阅读次数:
158
题目描述 国际象棋是世界上最古老的博弈游戏之一,和中国的围棋、象棋以及日本的将棋同享盛名。据说国际象棋起源于易经的思想,棋盘是一个8*8大小的黑白相间的方阵,对应八八六十四卦,黑白对应阴阳。 而我们的主人公小Q,正是国际象棋的狂热爱好者。作为一个顶尖高手,他已不满足于普通的棋盘与规则,于是他跟他的好 ...
分类:
其他好文 时间:
2018-02-10 11:24:53
阅读次数:
197
Description 给一个n*n的地图,每个格子有一个价格,找一个矩形区域,使其价格总和位于[k,2k] 给一个n*n的地图,每个格子有一个价格,找一个矩形区域,使其价格总和位于[k,2k] Input 输入k n(n<2000)和一个n*n的地图 输入k n(n<2000)和一个n*n的地图 ...
分类:
其他好文 时间:
2017-12-25 15:09:57
阅读次数:
195
悬线法 cpp include include include using namespace std; int n, m, ans=0, h[1005][1005], l[1005][1005], r[1005][1005]; bool a[1005][1005]; char s[15]; int ...
分类:
其他好文 时间:
2017-12-13 23:56:39
阅读次数:
136