深搜7:【SSL】1329.最大平台
题目:
题目描述:
下面是一个4x4的矩阵,它的特点是:
1、矩阵的元素都是正整数。
2、数值相等的元素相邻。
这样,这个矩阵就形成了一级级“平台”,其最大的“平台”面积为8,高度(元素值)为6.若有一个N*N的矩阵也具有上面矩阵的特点,求矩阵最大“平台”的面积和高度。
6 6 6 7
1 6 3 7
1 6 6 7
6 6 7 7
输入
第一行为N(1<=N<=100),以下为N*N的矩阵。
输出
第一行为平台的最大面积;
第二行为元素值。
样例
输入样例
4
6 6 6 7
1 6 3 7
1 6 6 7
6 6 7 7
输出样例
8
6
思路:
这道题我一开始以为它很简单,就是直接dfs找和当前这个数相连且相同的数(类似于泡泡龙),但我做完之后发现有个问题,我第一次交才20分。
先看一下这个错误的代码:
void dfs(int x,int y,int sz,int bs)//bs用来存当前找到的平台大小
{
v[x][y]=true;
bs++;
if(bs>h1)
{
h1=bs;
h2=sz;
}
for(int i=0;i<4;i++)
{