poj1088 DFS深度搜索
2012-08-13 16:36
459 查看
#include<iostream> #include<cstring> using namespace std; int a[110][110],b[110][110],n,m; int d[4][2]={0,1,-1,0,0,-1,1,0}; int DFS(int i,int j) { int x,y; if(b[i][j]) return b[i][j]; else{ for(int k=0;k<4;k++) { x=i+d[k][0]; y=j+d[k][1]; if(x>0 && y>0 && x<=n && y<=m &&a[x][y]<a[i][j] ) b[i][j]=DFS(x,y)>b[i][j]?DFS(x,y):b[i][j]; } return ++b[i][j]; } } int main() { int i,j,t; while(cin>>n>>m) { ; memset(b,0,sizeof(b)); int MAX=0; for(i=1;i<=n;i++) for(j=1;j<=m;j++) cin>>a[i][j]; for(i=1;i<=n;i++) for(j=1;j<=m;j++) if(MAX<DFS(i,j)) MAX=DFS(i,j); cout<<MAX<<endl; } //system("pause"); return 0; }
相关文章推荐
- poj1088 滑雪 dp记忆化搜索 dfs深度优先搜索
- DFS深度搜索算法实现深度探究解析-以POJ 1040为例
- 深度优先搜索dfs(poj 1655)
- DFS深度搜索算法实现深度探究解析-以POJ 1040为例
- POJ 1190-生日蛋糕(dfs 深度搜索 优化减枝)
- 记忆化搜索POJ-1088(dfs+dp)
- poj--1088--DFS(记忆化搜索之经典)
- 深度搜索DFS-Lake Counting(POJ NO.2386)
- ACM-POJ 1562 DFS 深度优先搜索
- poj1312 dfs 深度优先搜索
- poj入门水题--深度搜索(dfs)题 1011,含各种剪枝,比较经典
- POJ 1088 滑雪 DFS 记忆化搜索
- 深度搜索DFS-Lake Counting(POJ NO.2386)
- POJ-2488 A Knights Journey-深度优先搜索DFS
- 深度搜索DFS-Lake Counting(POJ NO.2386)
- poj--1088--DFS(记忆化搜索之经典)
- POJ-1979 深度优先搜索DFS
- [ACM] poj 1088 滑雪 (内存搜索DFS)
- poj3009之深度优先搜索 dfs解法
- POJ-1088 滑雪 (dfs + 线性dp)