zoukankan      html  css  js  c++  java
  • (DP6.1.4.2)POJ 1088 滑雪

    其实下面用到的是搜索。(呜呜,DP写的过了测试用例但是却总是AC不了,所以改用搜索来做了)


    /*
     * POJ_1088.cpp
     *
     *  Created on: 2013年10月13日
     *      Author: Administrator
     */
    
    #include <iostream>
    #include <cstdio>
    
    using namespace std;
    
    const int maxn = 110;
    
    int a[maxn][maxn];
    int d[maxn][maxn];
    int dir[4][2] = {{1,0},{-1,0},{0,1},{0,-1} };
    
    int r,c;
    void run(int x,int y){
    	if(d[x][y] > 0){
    		return ;
    	}
    
    	d[x][y] = 1;
    
    	int i,j;
    
        for(i = 0 ; i < 4 ; ++i){
        	int xx = x + dir[i][0];
        	int yy = y + dir[i][1];
    
        	if(xx >= 0 && xx <r && yy >= 0 && yy < c && a[xx][yy] < a[x][y]){
    
        		run(xx,yy);
    
        		if(d[xx][yy] + 1 > d[x][y]){
        			d[x][y] = d[xx][yy] + 1;
        		}
        	}
        }
    }
    
    
    int main(){
    	while(scanf("%d%d",&r,&c)!=EOF){
    
    		int i,j;
    		for(i = 0 ; i < r ; ++i){
    			for(j = 0 ; j < c ; ++j){
    				scanf("%d",&a[i][j]);
    			}
    		}
    
    		int maxStep = 0;
    		for(i = 0 ; i < r; ++i){
    			for(j = 0 ; j < c ; ++j){
    				if(d[i][j] == 0){
    					run(i,j);
    
    					if(d[i][j] > maxStep){
    						maxStep = d[i][j];
    					}
    				}
    
    
    			}
    		}
    
    		printf("%d
    ",maxStep);
    	}
    
    	return 0;
    }
    


  • 相关阅读:
    字符串时间+8个小时
    Django的field字段与参数介绍
    celery+Django
    二分查找
    排序算法
    socket套接字
    网络七层协议简述
    ORM操作mysql数据库多表的增删改查
    ORM操作mysql数据库
    Django框架静态文件配置和URL解析
  • 原文地址:https://www.cnblogs.com/keanuyaoo/p/3367711.html
Copyright © 2011-2022 走看看