摘要: 题意:给出一个蛋糕,蛋糕有两种颜色组成,同一种颜色的可以切矩形,红蓝相间的可以切正方形。问你切出的蛋糕的最大周长对于同一种颜色,很显然就是最大子矩形了。用悬线法搞定对于红蓝相间的正方形,可以用DP解决。定义dp[i][j]表示,以i,j为正方形右下角点的时候的最大边长。显然dp[i][j]=min(dp[i-1][j],dp[i][j-1])+1,但是有一个前提,那就是map[i][j]!=map[i-1][j] && map[i][j]!=map[i][j-1]另外还需要注意一点就是,对角线上的元素必须是相同的。比如BBBR 如果不注意判断对角线的元素,那么正方形会得出2*2 阅读全文
posted @ 2012-10-11 10:51 Accept 阅读(324) 评论(0) 推荐(0) 编辑