ZUFE 1120 trs滑雪【记忆化搜索】
来源:互联网 发布:网易uu for mac 编辑:程序博客网 时间:2024/05/23 12:06
1120: trs滑雪
时间限制: 1 Sec 内存限制: 128 MB提交: 70 解决: 27
[提交][状态][讨论版]
题目描述
trs喜欢滑雪。他来到了一个滑雪场,这个滑雪场是一个矩形,为了简便,我们用r行c列的矩阵来表示每块地形。为了得到更快的速度,滑行的路线必须向下倾斜。 例如样例中的那个矩形,可以从某个点滑向上下左右四个相邻的点之一。例如24-17-16-1,其实25-24-23…3-2-1更长,事实上这是最长的一条。
输入
输入文件 第1行: 两个数字r,c(1< =r,c< =100),表示矩阵的行列。第2..r+1行:每行c个数,表示这个矩阵。
输出
输出文件 仅一行: 输出1个整数,表示可以滑行的最大长度。
样例输入
5 51 2 3 4 516 17 18 19 615 24 25 20 714 23 22 21 813 12 11 10 9
样例输出
25
#include<iostream>#include<cstdio>#include<cstring>#include<string>#include<cmath>#include<queue>#include<stack>#include<vector>#include<map>#include<algorithm>using namespace std;#define ll long long#define ms(a,b) memset(a,b,sizeof(a))const int M=1e3+10;const int inf=0x3f3f3f3f;int i,j,k,n,m;int mp[M][M];int flag[M][M];int dp[M][M];int dir[4][2]={-1,0,1,0,0,-1,0,1};int rec(int x,int y){ if(flag[x][y])return dp[x][y]; for(int i=0;i<4;i++){ int xx=x+dir[i][0]; int yy=y+dir[i][1]; if(xx>=0&&yy>=0&&xx<n&&yy<m&&mp[xx][yy]<mp[x][y]) dp[x][y]=max(dp[x][y],rec(xx,yy)+1); } flag[x][y]=1; return dp[x][y];}int main(){ while(~scanf("%d%d",&n,&m)){ for(int i=0;i<n;i++) for(int j=0;j<m;j++) scanf("%d",&mp[i][j]),dp[i][j]=1; ms(flag,0); int ans=1; for(int i=0;i<n;i++) for(int j=0;j<m;j++){ ans=max(ans,rec(i,j)); } printf("%d\n",ans); } return 0;}
0 0
- ZUFE 1120 trs滑雪(记忆化搜索)
- ZUFE 1120 trs滑雪【记忆化搜索】
- 滑雪 记忆化搜索
- 【记忆化搜索】滑雪
- 【记忆化搜索】滑雪
- 滑雪--记忆化搜索
- 滑雪【记忆化搜索】
- 滑雪 记忆化搜索
- POJ1088 滑雪-记忆化搜索
- 滑雪 (记忆化搜索)
- poj1088 滑雪 记忆化搜索
- POJ1088滑雪【记忆化搜索】
- POJ1088滑雪 记忆化搜索
- POJ1088滑雪(记忆化搜索)
- POJ1088 滑雪 记忆化搜索
- POJ1088 滑雪(记忆化搜索)
- poj滑雪(记忆化搜索)
- 滑雪(记忆化搜索)
- 错误:在查找预编译头时遇到意外的文件结尾。是否忘记了向源中添加"#include"stdafx.h""
- UNet系统初次使用——联网Boxing游戏(4)
- 项目进度(四)
- 个人了解的一些Android网络通信框架的介绍
- 错误:“无法定位程序输入点xxx.dll于动态链接库上”
- ZUFE 1120 trs滑雪【记忆化搜索】
- Deep Learning学习 之 CNN代码解析(MATLAB)
- 【Linux】由telnet实验引发的安装Apache问题
- USING YOUR PC
- 错误:在xx导出类中,不允许dllimport静态数据成员
- java-两个递归问题
- Random函数
- 织梦提示Call to undefined function解决办法
- 编译原理——语法分析程序的设计