https://codeforc.es/gym/101461 5题结束了,可能是只打了3个小时吧。要是E试试Java8去用高精浮点二分,或者坚持读下来发现F是个割点模板题?以后可能远古场还是不打了,要拉2015年以内的。 D City Game 悬线法求最大非1子矩阵,根据up[i][j]=(g[i ...
分类:
其他好文 时间:
2019-09-01 11:10:12
阅读次数:
99
"[ZJOI2007]棋盘制作" 悬线法 H[i,j]为点(i,j)对应的悬线的长度 L[i,j]为点(i,j)对应的悬线向左最多能够移动到的 位置 。 R[i,j]为点(i,j)对应的悬线向右最多能够移动到的 位置 。 预处理:对于第i行 若(i,j)和(i,j 1)不同色则L[i,j]=L[i, ...
分类:
其他好文 时间:
2019-08-19 17:15:34
阅读次数:
83
例题 P1169 [ZJOI2007]棋盘制作 题目描述 国际象棋是世界上最古老的博弈游戏之一,和中国的围棋、象棋以及日本的将棋同享盛名。据说国际象棋起源于易经的思想,棋盘是一个8×88 \times 88×8大小的黑白相间的方阵,对应八八六十四卦,黑白对应阴阳。 而我们的主人公小Q,正是国际象棋的 ...
分类:
其他好文 时间:
2019-07-24 10:25:14
阅读次数:
103
悬线法 ?用途 针对求给定矩阵中满足某条件的极大矩阵,比如“面积最大的长方形、正方形”“周长最长的矩形等等”。 ?思路 悬线法是一条竖线,这条竖线要满足上端点在整个矩形上边界或者是一个障碍点。然后以这条悬线进行左右移动,直到移至障碍点或者是矩阵边界,进而确定这条悬线所在的极大矩阵。也就是说,我们要针 ...
分类:
其他好文 时间:
2019-07-21 20:05:30
阅读次数:
167
我们常常会遇到这样的问题:给定一个01矩阵,求其中全0/1的最大子矩阵的面积。 简单的模板题如:[Luogu]P4147,复杂点的有[Luogu]P5300 下面我们介绍一种比较容易的算法:悬线法 其实悬线法更多的是一种思想,许多最大化子矩阵的问题也能用这种思想解决。 我们想象有一条竖线,这条线的上 ...
分类:
其他好文 时间:
2019-06-29 13:15:46
阅读次数:
141
悬线法,用来解决给定矩阵中满足条件的最大子矩阵。 首先对于矩阵中每一个点,分别向左向右维护合法的最大范围。 之后对于每个点,与上一排比较,如果和它上方的点满足条件,就取两排中包含这两个点的最大横区间,最大纵区间递归+1. 代码如下 ...
分类:
其他好文 时间:
2019-03-25 23:26:52
阅读次数:
144
解题关键:悬线法模板题。注意此模板用到了滚动数组。 ...
分类:
其他好文 时间:
2019-02-11 10:59:14
阅读次数:
211
题目链接:(vjudge) "戳我" ~~从今天开始 不咕咕 地填坑啦~~ 考虑一般的求最大子矩阵和。。。我们一般都是DP,或者直接上悬线法递推。 下面附一个DP的代码: cpp include include include include define MAXN 310 using namesp ...
分类:
其他好文 时间:
2019-02-01 23:26:32
阅读次数:
213
例题:[ZJOI2007]棋盘制作 先贴代码: Q&A Q:遇到这种情况不会挂掉么? A:不会,在这个位置时能得到正确答案。 ...
分类:
其他好文 时间:
2018-12-15 17:19:52
阅读次数:
992
虽然还是悬线法,但是这道题可不能轻易地套模板了,而是要换一种思路,横着扫一遍,竖着扫一遍,时间复杂度依旧是O(n^2),然而空间复杂度有一定的优化 如果用原来的方法,显然时间空间都会炸(如果你想用map我也没办法...时间换空间?) ...
分类:
其他好文 时间:
2018-12-12 23:45:48
阅读次数:
223