poj -- 1088 滑雪 【简单深搜】
来源:互联网 发布:晋中干部网络培训平台 编辑:程序博客网 时间:2024/06/15 02:16
传送门
//思路 : 本菜鸡的思路是从一个点进行记忆化搜索, 可以走的地方就走. 并判断是否记忆化过, 是的话直接返回当前这个点可以到达的最大深度.
dp[i][j] 就是代表从(i,j)这个点可以到达的最大深度.
AC Code
/** @Cain*/const int maxn=1e2+5;int dp[maxn][maxn],h[maxn][maxn];int n,m;int dfs(int x,int y){ if(dp[x][y] > 1) return dp[x][y]; //dp[i][j] 是记忆化搜索 int ans = 1; if(h[x][y] > h[x][y-1] && y-1>0) ans = max(ans,dfs(x,y-1)+1); if(h[x][y] > h[x-1][y] && x-1>0) ans = max(ans,dfs(x-1,y)+1); if(h[x][y] > h[x][y+1] && y+1<=m) ans = max(ans,dfs(x,y+1)+1); if(h[x][y] > h[x+1][y] && x+1<=n) ans = max(ans,dfs(x+1,y)+1); return ans;}void solve(){ scanf("%d%d",&n,&m); for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ scanf("%d",&h[i][j]); } } int res = 0; for(int i=1;i<=n;i++){ for(int j=1;j<=m;j++){ dp[i][j] = dfs(i,j); res = max(res,dp[i][j]); } } printf("%d\n",res);}
阅读全文
0 0
- poj -- 1088 滑雪 【简单深搜】
- poj 1088 滑雪(简单dfs)
- POJ 1088 滑雪(简单DFS+dp)
- poj 1088 滑雪(简单dp)
- POJ 1088 滑雪
- POJ 1088 滑雪
- POJ 1088 滑雪
- Poj 1088 滑雪
- poj 1088 滑雪
- 滑雪--POJ--1088
- poj 1088 滑雪(DP)
- POJ 1088 滑雪
- POJ 1088 滑雪
- poj 1088 滑雪
- POJ 1088 滑雪
- poj 1088 滑雪
- POJ 1088 滑雪
- poj 1088 滑雪
- angular-cli初步学习
- 网络传输三要素,网络模型,http、TCP/IP协议与socket之间的区别
- A
- R数据录入和操作
- 重温 Servlet
- poj -- 1088 滑雪 【简单深搜】
- 【矩阵快速幂】LightOJ_1132_Summing up Powers
- 【C语言】【unix c】编译过程
- 白话经典算法系列
- 在cmd中输入ls命令出现“ls不是内部或外部命令解决
- UVA 1374 ——Power Calculus(IDA*搜索)
- PAT--1045. Favorite Color Stripe(LIS)
- POJ
- tyvj 4757 Cleaning 用最少的线段覆盖全区间 贪心 小优化