性感代码在线求调教(悬2关)
  • 板块灌水区
  • 楼主PeaceSunset
  • 当前回复9
  • 已保存回复9
  • 发布时间2023/6/7 16:39
  • 上次更新2023/10/23 13:44:47
查看原帖
性感代码在线求调教(悬2关)
967856
PeaceSunset楼主2023/6/7 16:39

题目

50分记录

记忆化不知道为什么没过。

代码:

#include<bits/stdc++.h>
#define int long long
using namespace std;
const int N=110;
int n,m,a[N][N],ans,ll[N][N];
int dfs(int x,int y){
	if(x<1||y<1||x>n||y>m)return 0;
	if(ll[x][y]!=0)return ll[x][y];
	int num=0;
	if(a[x-1][y]<a[x][y])num=max(num,dfs(x-1,y)+1);
	if(a[x+1][y]<a[x][y])num=max(num,dfs(x+1,y)+1);
	if(a[x][y-1]<a[x][y])num=max(num,dfs(x,y-1)+1);
	if(a[x][y+1]<a[x][y])num=max(num,dfs(x,y+1)+1);
	ll[x][y]=num;
	return num;
}
signed main(){
	cin>>n>>m;
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			cin>>a[i][j];
		}
	}
	for(int i=1;i<=n;i++){
		for(int j=1;j<=m;j++){
			ans=max(dfs(i,j),ans);
		}
	}
	cout<<ans;
	return 0;
}
2023/6/7 16:39
加载中...