#include<bits/stdc++.h>
#define l 105
using namespace std;
int s[l][l],dp[l][l];
int search(int a,int b){
if(s[a-1][b]>s[a][b]){
dp[a-1][b]=max(dp[a-1][b],dp[a][b]+1);
search(a-1,b);
}
if(s[a][b-1]>s[a][b]){
dp[a][b-1]=max(dp[a][b-1],dp[a][b]+1);
search(a,b-1);
}
if(s[a][b+1]>s[a][b]){
dp[a][b+1]=max(dp[a][b+1],dp[a][b]+1);
search(a,b+1);
}
if(s[a+1][b]>s[a][b]){
dp[a+1][b]=max(dp[a+1][b],dp[a][b]+1);
search(a+1,b);
}
return dp[a][b];
}
int main(){
int r,c;
int minn=200000000,ans=0,sx,sy;
int i,j;
cin>>r>>c;
for(i=1;i<=r;i++){
for(j=1;j<=c;j++){
cin>>s[i][j];
if(s[i][j]<minn){
minn=s[i][j];
sx=i;
sy=j;
}
}
}
dp[sx][sy]=1;
search(sx,sy);
for(i=1;i<=r;i++){
for(j=1;j<=c;j++){
if(dp[i][j]>ans){
ans=dp[i][j];
}
}
}
cout<<ans;
return 0;
}
我心态崩了,俩错一超时