悬线法
Jozky86
这个作者很懒,什么都没留下…
展开
-
【悬线法】学习总结
【悬线法】学习总结转载 2020-09-09 10:27:15 · 322 阅读 · 0 评论 -
P4147 玉蟾宫
P4147 玉蟾宫题意:给你一个n * m的矩阵,矩阵每个值有F或R,求最大的全为F的矩阵,输出面积 * 3题解:很明显,求最大01矩阵,悬挂法或者单调栈对于模板除了要记熟还要知道原理,不能光搬运,还要会调整代码:#include<bits/stdc++.h>#define debug(a,b) printf("%s = %d\n",a,b);typedef long long ll;using namespace std;//Fe~Jozkyconst ll INF_l原创 2021-07-25 16:35:17 · 131 阅读 · 0 评论 -
H - Maximal submatrix HDU - 6957
H - Maximal submatrix HDU - 6957题意:给定一个n行m列的矩阵,求每列上面积不减的最大子矩阵对于每个测试用例,打印一个表示最大子矩阵的整数题解:要求求一个最大面积的满足每列非递减的矩阵,这怎么想?我们可以转化成01矩阵,每一个位置1表示该位置比上面一位大,然后求最大的01矩阵就可以了,单调栈做法时注意0的话可以作为矩阵的开始,详细看看代码代码:单调栈做法#include<bits/stdc++.h>#define debug(a,b) print原创 2021-07-23 22:11:21 · 221 阅读 · 0 评论 -
[ZJOI2007]棋盘制作
文章目录[ZJOI2007]棋盘制作题意:题解:单调栈代码:悬线法[ZJOI2007]棋盘制作题意:选取最大的01相邻的正方形和矩形,输出面积题解:单调栈如图:左图为题目给的样例,我们要找01相邻最大的正方形就是图中绿色部分矩形就是如图01相邻不好找,我们可以转换下思路,仔细看看正方形和矩形的两个图,0和1相邻说明0和1同行但列差1,同列但行差1,所以我们可以通过坐标奇偶性取反奇数行偶数列取反,偶数行奇数列取反这样就会得到:第一个图的右图:这样我们就将01问题转换成求最大的原创 2020-09-07 23:13:11 · 285 阅读 · 0 评论