摘要: 给一个矩阵,依然是求满足条件的最大子矩阵不过题目中说任意两列可以交换,这是对题目的简化求出h数组以后直接排序,然后找出(col-j)*h[j]的最大值即可(这里的j是从0开始)因为排序会影响到h数组下一行的求解,所以将h数组中的元素复制到temp数组中去,再排序 1 //#define LOCAL ... 阅读全文
posted @ 2014-07-29 22:52 AOQNRMGYXLMV 阅读(166) 评论(0) 推荐(0) 编辑
摘要: 这题是上一题的升级版关键在于条形图的构造,逐行处理输入的矩阵,遇到'F'则在上一次的条形图基础上再加1,遇到'R'则置为0然后用上一题的算法,求每行对应条形图的最大矩阵的面积。另外:本来是debug都不用就1A的节奏。可在输入数据上,一开始我用的是scanf读入字符 和 getchar跳过无效字符,... 阅读全文
posted @ 2014-07-29 18:33 AOQNRMGYXLMV 阅读(216) 评论(0) 推荐(0) 编辑
摘要: 这个问题姑且也叫做最大子矩阵吧给一个树状图,求一个最大面积的子矩阵思路是这样的,对于每个单位矩阵,求出左边连续不比它低的矩阵的下标,放在l数组里同样,再求出右边连续的不比它低的矩阵的下标这样,对于每个单个矩阵所能得到的最大面积就是(r[i]-l[i]+1)*a[i] 1 //#define LOCA... 阅读全文
posted @ 2014-07-29 17:36 AOQNRMGYXLMV 阅读(150) 评论(0) 推荐(0) 编辑
摘要: dp[i][j]表示以(i,j)为右下角所含棋盘的最大规模,如果 s[i][j] == s[i-1][j-1] && s[i][j] != s[i-1][j] && s[i][j] != s[i][j-1] dp[i][j] = min( dp[i-1][j-1], dp[i-1][j], dp... 阅读全文
posted @ 2014-07-29 10:33 AOQNRMGYXLMV 阅读(139) 评论(0) 推荐(0) 编辑