悬线法
Jozky86
这个作者很懒,什么都没留下…
展开
-
【悬线法】学习总结
【悬线法】学习总结转载 2020-09-09 10:27:15 · 377 阅读 · 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~Jozky const ll INF_l原创 2021-07-25 16:35:17 · 148 阅读 · 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 · 252 阅读 · 0 评论 -
[ZJOI2007]棋盘制作
文章目录[ZJOI2007]棋盘制作题意:题解:单调栈代码:悬线法 [ZJOI2007]棋盘制作 题意: 选取最大的01相邻的正方形和矩形,输出面积 题解: 单调栈 如图: 左图为题目给的样例,我们要找01相邻最大的正方形 就是图中绿色部分 矩形就是如图 01相邻不好找,我们可以转换下思路,仔细看看正方形和矩形的两个图,0和1相邻说明0和1同行但列差1,同列但行差1,所以我们可以通过坐标奇偶性取反 奇数行偶数列取反,偶数行奇数列取反 这样就会得到: 第一个图的右图: 这样我们就将01问题转换成求最大的原创 2020-09-07 23:13:11 · 309 阅读 · 0 评论
分享