```c
@[bengyy](/user/750955)
#include<iostream>
#include<cstdio>
using namespace std;
int n,m,ma=0;
int a[101][101],s[101][101],mx;
bool f[101][101];
int fxszx[]={0,0,1,-1};
int fxszy[]={1,-1,0,0};
int dfs(int dx,int dy)
{
if(s[dx][dy])
{
return s[dx][dy];
}
s[dx][dy]=1;
for(int i=0;i<4;i++)
{
int x=dx+fxszx[i];
int y=dy+fxszy[i];
if(x<1||y>m||x>n||y<1)continue;
if(a[x][y]>a[dx][dy])
{
dfs(x,y);
s[dx][dy]=max(s[dx][dy],s[x][y]+1);
}
}
return s[dx][dy];
}
int main()
{
cin>>n>>m;
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
scanf("%d",&a[i][j]);
for(int i=1;i<=n;i++)
for(int j=1;j<=m;j++)
{
mx=max(mx,dfs(i,j));
}
cout<<mx;
return 0;
}
```
by Jim777 @ 2022-08-26 09:25:38
@[Jim777](/user/697153) 深搜会不会超时啊,我用广搜总是有一两个WA
by bengyy @ 2022-08-26 09:55:34
这是记忆化搜索诶兄弟
by LYM20114 @ 2022-08-27 21:21:04
广搜会TLE
by LYM20114 @ 2022-08-27 21:21:26
@[LYM2011](/user/531776) 是我菜了,不熟练(虽然但是,优化后的广搜不会TLE)
by bengyy @ 2022-09-07 10:51:21